У меня есть JQuery скрипт:JQuery ясно ввода, текстовое поле текст на фокус с динамически добавленных входов
$("input:not(':input[type=button], :input[type=submit], :input[type=reset]'), textarea").each(function() {
var Input = $(this);
var default_value = Input.val();
$(Input).on("focus", function() {
if(Input.val() == default_value) Input.val("");
}).on("blur", function() {
if(Input.val().length == 0) Input.val(default_value);
});
});
Сво работает нормально, если входы уже на HTML, но как сделать эту работу на динамически добавляемых входов?
Первая идея состояла в том, чтобы изменить:
$(Input).on("focus", function()
в
$(document).on("focus", Input, function()
, но не повезло.
UPDATE
Я думаю, я нашел способ заставить его работать должным образом на любых входов:
$(document).on("focus", "input:not(':input[type=button], :input[type=submit], :input[type=reset]'), textarea", function(e) {
if (e.target.value == e.target.defaultValue) {
e.target.value = "";
}
}).on("blur", "input:not(':input[type=button], :input[type=submit], :input[type=reset]'), textarea", function(e) {
if (e.target.value == "") {
e.target.value = e.target.defaultValue;
}
});
необходимо положить его после создания новый элемент ... вы можете поделиться, как это делается. –
Нажмите ссылку «Добавить» и сосредоточьтесь на новых входах: http://jsfiddle.net/r3ag5bL8/1/ Только первый вход удаляет текст в фокусе. – Tomas
http://jsfiddle.net/arunpjohny/h3arccea/3/? –