當我在<span>
點擊,跨度變化的輸入字段事件replaceWith()後,不會觸發
$('table td').on('click', 'span', function() {
var $el = $(this);
var $input = $('<input/>').val($el.text()).attr('class', 'form-control');
$el.replaceWith($input);
var save = function() {
var $p = $ ('<span>').text($input.val());
$input.replaceWith($p);
};
$input.one('blur', save).focus();
});
$('input').on('change', function() {
var target = $(this);
$.ajax({
url: 'url',
data: {
value: target.val(),
ruleId: target.data('rule'),
date: target.data('date')
},
type: 'POST',
success: function(data) {
console.log('updated');
}
});
});
之後,我需要當輸入變爲趕上
但它不會觸發$('input').on('change', function() {
函數了...
大部分的時間(如果不總是)如果jQuery的去除元素DOM,它也銷燬了所有連接到它的聽衆。 – hlfrmn
@George yes一切都包裹在'''$(document).ready(function()''' – yooouuri
_ .on()方法將事件處理程序附加到jQuery對象中當前選定的一組元素,並且您的輸入isn' ('change',function(){'執行 – George