Php 取消选中具有相似ID但名称不同的脚本生成复选框
下面是示例代码:Php 取消选中具有相似ID但名称不同的脚本生成复选框,php,jquery,checkbox,Php,Jquery,Checkbox,下面是示例代码: <form method="post" action="actions.php"> <div id="container"> <input type="checkbox" name="action1" id="a1-100" value="100"> Action 1 on 100 <input type="checkbox" name="action2" id="a2-100" value="100"> Action 2 on
<form method="post" action="actions.php">
<div id="container">
<input type="checkbox" name="action1" id="a1-100" value="100"> Action 1 on 100
<input type="checkbox" name="action2" id="a2-100" value="100"> Action 2 on 100
<br><br><br><br>
<input type="checkbox" name="action1" id="a1-200" value="200"> Action 1 on 200
<input type="checkbox" name="action2" id="a2-200" value="200"> Action 2 on 200
</div>
<input type="submit" name="submit" value="Perform Actions">
行动1:100
行动2:100
2001年12月20日行动1
行动2:200
考虑这个例子,PHP生成的复选框列表作为表单元素,其中PHP只为100生成2个复选框,为200生成2个复选框
对于每个唯一值,我只需要操作1或操作2。因此,如果值100的动作1被选中,我希望值100的动作2被取消选中,而不影响其他值中的任何内容
如何实现这一点?最好的方法是使用单选按钮:
<form method="post" action="actions.php">
<div id="container">
<input type="radio" name="action-for-100" id="a1-100" value="100"> Action 1 on 100
<input type="radio" name="action-for-100" id="a2-100" value="100"> Action 2 on 100
<br><br><br><br>
<input type="radio" name="action-for-200" id="a1-200" value="200"> Action 1 on 200
<input type="radio" name="action-for-200" id="a2-200" value="200"> Action 2 on 200
</div>
<input type="submit" name="submit" value="Perform Actions">
这将确保选中“this”时,容器中具有相同
值的所有其他复选框均未选中。如果您取消选中一个按钮,它不会起任何作用。@t-j-crowder我可以理解为什么使用单选按钮是一个简单的解决方法。我想通过复选框为操作1和操作2创建一个值数组,这样我就可以使用PHP循环执行这些操作。非常感谢你的回答。我想我将首先尝试您提供的jquery解决方案,如果我仍然不满意,我将切换到无线电输入。
$("#container input[type=checkbox]").click(function() {
if (this.checked) {
$("#container input[type=checkbox][value=" + this.value + "]")
.not(this)
.prop("checked", false);
}
});