[英]HTML form radio button to submit or hide on click with jquery
我正在尝试使用jquery来提交或隐藏,具体取决于单击的单选按钮。 我正在将值提交给mysql。 单选按钮位于tr中。 如果我以表单的形式包含一个提交按钮,则可以成功地用该值更新mysql。
<tr>
<form name="MyStatusForm" id="MyStatusForm" method="post" action="update.php">
<td class="statuscolumn">
<input name='status' type='radio' value='1' />
<label for="new">New</label>
<input name='status' type='radio' value='2' />
<label for="accept">Accept</label>
<input name='status' type='radio' value='3' />
<label for="resolve">Resolve</label>
</td>
</form>
</tr>
我的脚本查找单选按钮的值,以确定要采取的操作。
$('input[type=radio]').click(function () {
var $closestTR = $(this).closest('tr');
var $closestForm = $(this).closest('form');
if (this.value == '1') || (this.value == '2') {
$closestForm.submit();
}
if (this.value == '3') {
var ok = confirm("some message?");
if (ok == true) {
$closestTR.hide("slow");
} else {
return;
}
}
});
皮革很好用。 只是提交无效。 单击单选按钮并且没有更新mysql时没有响应。
谢谢你的帮助
更正的标记
的HTML
<table>
<tr>
<td class="statuscolumn">
<form>
<input name='status' type='radio' value='1' />
<label for="new">New</label>
<input name='status' type='radio' value='2' />
<label for="accept">Accept</label>
<input name='status' type='radio' value='3' />
<label for="resolve">Resolve</label>
</form>
</td>
</tr>
</table>
$('input[type="radio"][name="status"]').click(function () {
var $closestTR = $(this).parents('tr');
$closestForm = $(this).parents('form');
if (($(this).attr('value') == '1') || ($(this).attr('value') == '2')) {
$closestForm.submit();
}
if (this.value == '3') {
var ok = confirm("some message?");
console.log(ok);
if (ok == true) {
$closestTR.hide();
} else {
return;
}
}
});
您的if中有语法错误,应为
if ((this.value == '1') || (this.value == '2'))
另外,不要忘记按照@adeneo的建议修复标记
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.