通过ajax我正在为表格构建一个动态html行,并通过jquery追加行。 我在行中的单元格中添加了一个复选框并返回该行。 单击复选框时出现问题是没有检查。 我可以看到复选框。 我停留在警报中,看到返回的文本的值。 我是否必须添加某种OnClick事件才能显示支票?
$(table).append(row);
value of row
<table>
<tr>
<td><input type="checkbox" name="vehicle1" value="Bike" />
</td>
</tr>
</table>
编辑ajax代码:
function BindRows(id) {
$.ajax({
type: "POST",
url: "Default.aspx/GetTable",
data: "{'id':'" + id + "'}",
contentType: "application/json",
dataType: "json",
success: function(data) {
var name = data.d[0];
var status = data.d[1];
var row = data.d[2];
var table = '#' + name + '_table_status' + status;
$('#<%= lblConfirmMsg.ClientID %>').html(row);
if (status.length > 0) {
$(table + ' tr').remove();
$(table).append(row);
alert(row);
}
},
error: function(request, error) {
$('#<%= lblConfirmMsg.ClientID %>').html("ERROR: " + error);
}
})
return false;
}
答案 0 :(得分:4)
刚出现了一些类似的问题(按钮/复选框什么都没做),因为我在不太好的位置调用了event.preventDefault()。也许这也是你的情况;)
答案 1 :(得分:1)
您是否为复选框,td或tr设置了onClick事件处理程序?如果是这样,你不应该从中返回false,因为它会阻止选中复选框。
答案 2 :(得分:1)
当父HTML元素具有不返回true的onClick属性时,会发生这种情况。
确保所有父onClick属性的结尾如下:
onClick =“...你的代码......;返回true;”
你没事。
答案 3 :(得分:0)
after append the row
$('input[type=checkbox]').live('click', function() {
var o = $(this);
o.append("checked='yes'");
});