как активировать новые элементы ввода для связывания функции размытия?
иногда я привязываю некоторые функции к документу, когда они размываются, фокусируются, нажимают, наводят курсор мыши или другие действия, которые он будет делать в js. но эти привязки не работают для новых добавленных элементов, как я могу привязывать функции к новым добавленным элементам?
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
<div class="box">
<input type="text" name="a" value="a" />
<input type="text" name="b" value="b" />
</div>
<button onclick="live_blur()">live_blur</button>
<script type="text/javascript">
$(function(){
$('[name]').blur(function (){
alert(this.value);
})
});
function live_blur(){
$('.box').append('<input type="text" name="c" value="c" />');
// how to acitve new inputs when blur and alert value
}
</script>
Прикрепите событие к document
используя функцию включения. Первый аргумент - это событие, второе указывает цель для выполнения события, а последний аргумент - это функция для выполнения (обработчик событий).
$(document).on('blur', '[name]',function (){
alert(this.value);
});
JS Fiddle: http://jsfiddle.net/ZWkEn/
вам нужно добавить прослушиватель событий к вновь созданному элементу
var input = $('<input type="text" name="c" value="c" />'); // create new <input>
$(".box").append(input); // append to your destination
input.on("blur", function () {
console.log(this.value);
}); // register event listener
Я могу порекомендовать вам, снова инициализировать вашу подсказку(), после того, как dyn.adding новые элементы