[英]Hide table row where radio button is selected after form submit
我有表格包含在表格中。 该表是从CF循环中构建的,在该循环中,我已在sql表中为每个行ID分配了NumberID。 我有一个执行jquery ajax提交的提交按钮。 我需要隐藏提交的行,而不是重新加载页面。
<form id="unsortedTable" >
<input type="submit" id="makeParentButton" value="Make Parent">
</span>
<div class="row-fluid"><p></p>
<table class="table table-bordered table-striped table-hover">
<tbody>
<cfloop query="nonAffiliated">
<tr id="#NumberID#">
<td><input type="radio" name="NumberID" value="#NumberID#"></td>
</tr>
</cfloop>
</tbody>
</table>
</div>
</form>
然后,我有了执行提交时触发的JavaScript。
$(document).ready(function(e) {
$("#unsortedTable").submit(sendForm);
});
function sendForm() {
var row = $(this).closest('tr');
$.post('handlers/formHandler.cfm',
$("#unsortedTable").serialize(),function(data,status){
$("#unsortedTable")[0].reset();
row.hide(); //This is just a guess
});
return false
}
一切正常,除了我无法将提交的行保存到hide()中。
除非表单位于您要隐藏的表行内,否则$(this).closest('tr')
将找不到该行。 您可能以为$(this)
确实是指单击的按钮,但是您在窗体上使用的是子处理程序,而不是按钮上的单击处理程序。
您可能想以其他方式找到该行,方法是通过id
或首先找到该按钮:
$('#rowId').hide();
要么
$('#buttonId').closest('tr').hide();
编辑:
在更仔细地阅读了您的问题之后,我意识到您不希望隐藏“提交”按钮,而希望隐藏单选按钮。 为此,您可以执行以下操作:
$(this).find('input:radio:checked').closest('tr').hide();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.