我想知道使用jquery向动态创建的表添加表单的好方法。我已经按照以下方式添加了一个表单,但是当我按下该按钮时,该函数不会被调用!
我是jquery的新手,所以我认为应该有更好的方法来创建表。
$("#aggiornaButton").click(function () {
//alert('button clicked');
$.ajax({
url: 'Servizi/selectAllCoseDaFare.php',
data: "",
dataType: 'json',
success: function (data) {
$("#coseDaFareBody").empty();
var formElimina = "<form action='' method='post' name ='eliminaForm' id='eliminaElementoSingolo' class='eliminaForm'>"
+ "<fieldset>"
+ "<input type='hidden' name='codID' id='codID' value='166'/>"
+ "<button id='eliminaButtonSingolo' class='eliminaButtonSingolo'>elimina</button>"
+ "</fieldset>"
+ "</form>";
$.each(data.risultati, function (idx, obj) {
if (idx % 2 === 0) {
var classe = "<tr><td>"
} else {
var classe = "<tr class='miostile-odd'><td>"
}
$("#coseDaFareBody").append(
classe + obj.id +
"</td><td>" + (obj.dataInserimento || "") +
"</td><td>" + (obj.descrizione || "") +
"</td><td>" + (obj.dataScadenza || "") +
"</td><td>" + (obj.isUrgente || "") +
"</td><td>" + (obj.inseritoDa || "") +
"</td><td>" + (obj.assegnatoA || "") +
"</td><td>" + (obj.fattoDa || "") +
"</td><td>" + (obj.isCompletato || "") +
"</td><td>" + (obj.dataEsecuzione || "") +
"</td><td>" + formElimina +
"</td></tr>"
);
});
功能是:
$('.eliminaForm').submit(function (event) {
var $form = $(this);
var id = $('#codID', $form).val();
alert("prova prova prova.");
});
谢谢。
答案 0 :(得分:0)
对新创建的dom元素
使用事件委派$(document).on("submit" , '.eliminaForm' , function(event) {
var $form = $(this);
var id = $('#codID', $form).val();
alert("prova prova prova.");
});