Я создаю несколько объектов DOM с простым JavaScript, которые помещаются на страницу после того, как все сделано.Добавить jQuery в динамические объекты JS-DOM
Теперь я хотел бы добавить несколько разных функций, используя jQuery. И добавьте его в процессе создания.
Как это выглядит сейчас (обычный старый, без JQuery):
var mainput = document.createElement("textarea");
mainput.setAttribute("ID", "masseinfo_" + dsatz.ID);
mainput.setAttribute("onkeyup", "checkAndSendMaAjax(" + dsatz.ID + ", '" + masseinfoup + "', '" + dsatz.Typ + "', this.value)");
Использование JQuery с KeyUp, кажется, не в состоянии, поскольку объект не находится на странице еще.
mainput.keyup(debounce(250, function (e) {
console.log('It works!');
checkAndSendMaAjax(" + dsatz.ID + ", '" + masseinfoup + "', '" + dsatz.Typ + "', this.value);
}));
Ошибка: keyup is not a function
Использование on
не сильно отличается.
mainput.on('keyup',null,(debounce(250, function (e) {
console.log('It works!');
checkAndSendMaAjax(" + dsatz.ID + ", '" + masseinfoup + "', '" + dsatz.Typ + "', this.value);
})));
Ошибка: on is not a function
Поиск немного привел меня к that page который написал немного о использовании на вместо живой:
$(".postitem").live("click", function() {...});
... would now be...
$(document).on("click", ".postitem", function() {...});
Так что я попытался:
$(document).on('keyup',mainput,(debounce(250, function (e) {
console.log('It works!');
checkAndSendMaAjax(" + dsatz.ID + ", '" + masseinfoup + "', '" + dsatz.Typ + "', this.value);
})));
Что нет t генерирует ошибку, но ничего не делает. Что я делаю неправильно?
Все, что я получаю 'TypeError: не может назначить свойства (новый String ("masseinfo_106")): не как object' – Qohelet
Вы можете создать функциональный пример своей проблемы? вы можете использовать https://jsfiddle.net/ для этого – pedrofsantos
Ну, проблема решена. Не очень хорошо: 'dsatzjqcode.push (« $ (document) .on ('keyup', '#masseinfo_ "+ dsatz.ID +"', function() {debounce (checkAndSendMaAjax ("+ dsatz.ID +", '"+ masseinfoup +"', '"+ dsatz.Typ +"', this.value), "+ debouncetime +");}); "); ' Я бросаю все в массив и использую' eval' после загрузки страницы – Qohelet