使用 jQuery 循环遍历表格,使用选中的复选框更新行中的特定单元格
我就是无法解决这个问题。我有一个带有一列复选框的表格。 Ajax 更新后,我想更新选中复选框的行中的特定单元格。我正在使用的 jQuery Ajax 调用是:
$.ajax({
type: 'POST',
url: 'ProcessDate',
data: params,
error: function(xhr, ajaxOptions, thrownError) {
alert(xhr.statusText);
},
success: function(html) {
closeDialog();
$('#results tbody tr').each(function(){
$("#CaseID:checked").parent().siblings("td.DateUpdated").html('CHANGE');
});
},
cache: false
});
HTML 是:
<table id="results">
<tr>
<td><input type="checkbox" id="CaseID"></td>
<td id="DateUpdated"></td>
</tr>
<tr>
<td><input type="checkbox" id="CaseID"></td>
<td id="DateUpdated"></td>
</tr>
<tr>
<td><input type="checkbox" id="CaseID"></td>
<td id="DateUpdated"></td>
</tr>
Ajax 调用成功,但我的表更新没有发生。
I just can't work this one out. I have a table with a column of checkboxes. After an Ajax update, I want to update a specific cell in the rows with checked checkedboxes. The jQuery Ajax call I'm using is:
$.ajax({
type: 'POST',
url: 'ProcessDate',
data: params,
error: function(xhr, ajaxOptions, thrownError) {
alert(xhr.statusText);
},
success: function(html) {
closeDialog();
$('#results tbody tr').each(function(){
$("#CaseID:checked").parent().siblings("td.DateUpdated").html('CHANGE');
});
},
cache: false
});
And the HTML is:
<table id="results">
<tr>
<td><input type="checkbox" id="CaseID"></td>
<td id="DateUpdated"></td>
</tr>
<tr>
<td><input type="checkbox" id="CaseID"></td>
<td id="DateUpdated"></td>
</tr>
<tr>
<td><input type="checkbox" id="CaseID"></td>
<td id="DateUpdated"></td>
</tr>
The Ajax call succeeds but my table update doesn't happen.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
首先,使用类,因为 Id 必须是唯一的,如下所示:
然后使用类选择器,如下所示:
不需要
.each()
循环,至少在您的示例代码中不是这样......类选择器将获得您想要的所有元素,无论行如何。First, use classes since Ids must be unique, like this:
Then use class selectors, like this:
There's no need for a
.each()
loop, at least not with your example code...the class selector will get all the elements you want, regardless of the row.