我实际上是在创建一个调查表单(类似于surveymonkey)。有一列您可以选择是否将此问题作为必填字段。然后,将对您在创建表单时刚刚勾选的选定字段进行验证。
所以现在我的问题是,必填字段是你喜欢的,所以它不是固定的。
如何编写用于验证的jquery,以便它根据强制要求验证所选的字段?
以下是我到目前为止所做工作的代码示例。它只验证其中一个字段。但是,如果创建表单的人决定拥有多个必填字段,则不会检查下一个。
<?php
$vQuery = "SELECT * FROM scFormLayout WHERE surveyID = '$id'";
$vResult = sqlsrv_query($conn, $vQuery);
while ($value = sqlsrv_fetch_array($vResult)) {
$vID = $value['id'];
$qnsID = 'qns'.$vID.'[]';
$compulsory = $value['compulsory'];
$vQuestion = $value['question'];
if ($compulsory == 'Compulsory') {
?>
<script type="text/javascript" language="javascript">
$(document).ready(function () {
// 1. prepare the validation rules and messages.
var rules = {"<?php echo $qnsID; ?>": "required"};
var messages = {"<?php echo $qnsID; ?>": "<?php echo $vQuestion; ?> is required"};
// 2. Initiate the validator
var validator= new jQueryValidatorWrapper("Form",rules, messages);
// 3. Set the click event to do the validation
$("#btnValidate").click(function () {
if (!validator.validate())
return;
});
});
</script>
<?php } }
sqlsrv_free_stmt($vResult); ?>发布于 2013-06-04 14:29:17
更好的方法是在while循环中为每个问题(应该是必需的)添加一个"required“类。
然后,只需在document.ready()函数内的单独脚本标记下在表单上使用jquery.validate。如果有帮助,或者你需要更多信息,请告诉我。
- Edit -例如,如果您在while循环中向用户显示来自数据库的问题,则对于某些问题,您会将“强制”值设置为“强制”。现在,您希望此类问题只按照jquery的要求进行验证。那么下面是如何去做的。
enter code here
<?php
while($res = $results) {
echo $res['question'].'<br/>';
if($res['compulsory'] = 'Compulsory')
echo '<input name = "any_name" class="required">';
else
echo '<input name = "any_name">';
}
?>
<script>
$(document).ready(function () {
$('#myForm').validate();
})
</script>希望这是足够的信息。
https://stackoverflow.com/questions/16910721
复制相似问题