Javascript 如果选中复选框,则需要删除行
我已经设置了一个jQuery/AJAX解决方案来更新和删除表中显示的项。AJAX部分工作正常,但一旦删除了一个项目,我就需要能够将其从视图中删除,并且我不知道如何在单击submit按钮后根据它们的值识别所选项目 以下是我的jQuery:Javascript 如果选中复选框,则需要删除行,javascript,jquery,Javascript,Jquery,我已经设置了一个jQuery/AJAX解决方案来更新和删除表中显示的项。AJAX部分工作正常,但一旦删除了一个项目,我就需要能够将其从视图中删除,并且我不知道如何在单击submit按钮后根据它们的值识别所选项目 以下是我的jQuery: $('#button').click(function(event){ var order = $("#sortable tbody").sortable("serialize"); order += "&" + $("form[name
$('#button').click(function(event){
var order = $("#sortable tbody").sortable("serialize");
order += "&" + $("form[name=favorites]").serialize().replace(/%5B%5D/g, '[]');
order += "&crudtype=update_favorites";
$('#savemessage').html('<p>Saving changes...</p>');
$.post("/crud",order,function(theResponse){
$('#savemessage').html(theResponse);
});
});
});
$(“#按钮”)。单击(函数(事件){
变量顺序=$(“#可排序tbody”)。可排序(“序列化”);
订单+=”&“+$”([name=favorites]”。序列化()。替换(/%5B%5D/g,[]);
订单+=“&crudtype=更新收藏夹”;
$('#savemessage').html('保存更改…');
$.post(“/crud”)、顺序、功能(响应){
$('#savemessage').html(响应);
});
});
});
我的HTML是从PHP生成的,因此数量和ID是可变的,但格式如下:
<tr class="odd" id="field_37">
<td class="handle"><a href="#">Item #1 Name</a></td>
<td><input type="checkbox" name="fid[]" id="fid" value="37" class="box check-child"></td>
</tr>
<tr class="even" id="field_29">
<td class="handle"><a href="#">Item #2 Name</a></td>
<td><input type="checkbox" name="fid[]" id="fid" value="29" class="box check-child"></td>
</tr>
因此,实际上(我认为)我需要的是添加到我的。单击类似“foreach checked fid,remove the responsive row ID”这样的函数(如果有意义的话)。获取选中复选框的基本选择器是
'input[type="checkbox"]:checked'
或
现在,您可以使用has()或循环并使用“最近”来获取trs
$('input[type="checkbox"]:checked').closest("tr").remove();
或
您可以这样做:
当用户单击复选框时,将类添加到父tr
$(".box").click(function() {
if($(this).is(':checked')) {
$(this).parents('tr').addClass('checkedtd');
} else {
$(this).parents('tr').removeClass('checkedtd');
}
});
单击delete时,将所有表tr分类为“checkedtd”并删除
$("#delt").click(function() {
alert($('.checkedtd').length);
$('.checkedtd').remove();
});
$('table:checkbox:checked')。最近('tr')。remove()
??仅供参考:文档中的id必须是唯一的。其工作原理类似于champ,选择它是为了简单。
$(".box").click(function() {
if($(this).is(':checked')) {
$(this).parents('tr').addClass('checkedtd');
} else {
$(this).parents('tr').removeClass('checkedtd');
}
});
$("#delt").click(function() {
alert($('.checkedtd').length);
$('.checkedtd').remove();
});