Jquery数组验证+ php
Posted
技术标签:
【中文标题】Jquery数组验证+ php【英文标题】:Jquery array validation + php 【发布时间】:2010-12-29 17:25:32 【问题描述】:我的 html 表单中有一个复选框组。复选框组包含数组。 我的问题是如何使用 jquery 验证复选框数组并在 php 中获取数组值
下面给出的代码
<input type="checkbox" name="go[]" value="1" /><label>Married</label><br>
<input type="checkbox" name="go[]" value="2" /><label>Widowed</label><br>
<input type="checkbox" name="go[]" value="3" /><label>Single</label><br>
<input type="checkbox" name="go[]" value="4"/><label>Minor</label>
提前致谢。
【问题讨论】:
“验证”是什么意思? 您希望如何验证它?你只希望一次点击一个吗?测试以确保至少其中一个被点击?等等...我们需要更多信息才能真正提供帮助 为什么这个问题获得了投票? SO 中的所有新手似乎都在发布这种模棱两可、令人困惑且不明确的问题,并且仍然获得投票。我希望我有他们的“运气”。 因为其他新手也有同样的问题 ;) 【参考方案1】:我认为您正在尝试使用 jQuery Validation 插件来确保您的组中至少有一个复选框被选中。
验证插件不喜欢带括号的输入名称。在表单的 validate 方法中试试这个:
rules:
'go[]': //since it has brackets, the name must be in quotes to work
required: true,
minlength: 1
【讨论】:
【参考方案2】:如果您的意思是如何验证复选框,因为它们包含 [],这里有一个使用 id 的解决方案:
<script type="text/javascript">
function validate()
var proceed = true;
for(var i = 1; i <= 4; i++)
if (!$("#" + i).is(':checked'))
proceed = false;
break;
if (proceed == true)
return true;
else
alert('All Fields Are Required !!');
return false;
</script>
html 表单可能如下所示:
<form action="frm" method="post" onsubmit="return validate();">
<input type="checkbox" id="1" name="go[]" value="1" /><label>Married</label><br>
<input type="checkbox" id="2" name="go[]" value="2" /><label>Widowed</label><br>
<input type="checkbox" id="3" name="go[]" value="3" /><label>Single</label><br>
<input type="checkbox" id="4" name="go[]" value="4"/><label>Minor</label>
<br />
<input type="submit">
</form>
对于 PHP:
// get checkboxes array
$chk_array = $_POST['go'];
现在你可以用任何你想要的方式操作 $chk_array 数组了:
注意:
$chk_array[0] // contains your 1st checkbox value
$chk_array[1] // contains your 2nd checkbox value
$chk_array[2] // contains your 3rd checkbox value
$chk_array[3] // contains your 4th checkbox value
在 php 中,数组从 0 索引开始。
谢谢
【讨论】:
以上是关于Jquery数组验证+ php的主要内容,如果未能解决你的问题,请参考以下文章