如何为动态生成的字段创建规则
How to create Rules for dynamically generated fields
http://www.kosherjellyfish.com/test/index.php
我正在为我的表单使用 [jQuery 验证插件][1]。
我在 tables 内有动态生成的表单字段:tables 的数量取决于创建的用户数量。以下 table 的示例:
<?php (for $i=1;$i<3;$i++){?>
<table class="coauthortable">
<tr>
<td>Title * </td>
<td>
<select name="contactTitle<? echo $i;?> ">
<option value="">Select Title</option>
<option value="Dr">Dr</option>
<option value="Miss">Miss</option>
<option value="Mr">Mr</option>
<option value="Mrs">Mrs</option>
<option value="Ms">Ms</option>
<option value="Professor">Professor</option>
</select>
</td>
</tr>
<tr>
<td>First Name *</td>
<td><input type="text" name="contactFirstName<? echo $i;?>" style="width:280px;" /></td>
</tr>
<!--Actual program has more rows-->
</table>
<?php } ?>
我希望将验证规则添加到动态生成的输入字段中:似乎我无法在验证方法本身中正确执行此操作,因为我不知道将要生成的实际字段数:
$("#papersubmitform").validate(
{
rules:{
//Can't add rules this way as I do not know how many rows will be generated.
contactTitle: {required: true},
contactFirstName: { required:true},
});
我尝试添加规则,这些规则将在页面加载后添加到 $(document).ready(function() 上,但它似乎不起作用。
$(document).ready(function() {
$(".coauthortable").each(function(i){
$(this).find(":input").each(function(){
$(this).rules("add",{required:true});
});
});
$("#papersubmitform").validate();
});
有人对我应该如何将规则添加到动态创建的元素有任何建议吗?
我已经在我自己的服务器上创建了一个示例页面...http://www.kosherjellyfish.com/test/index.php
您只需要按照相反的顺序进行即可:
$(document).ready(function() {
$("#papersubmitform").validate();
$(".coauthortable").each(function(i){
$(this).find(":input").each(function(){
$(this).rules("add",{required:true});
});
});
});
http://www.kosherjellyfish.com/test/index.php
我正在为我的表单使用 [jQuery 验证插件][1]。
我在 tables 内有动态生成的表单字段:tables 的数量取决于创建的用户数量。以下 table 的示例:
<?php (for $i=1;$i<3;$i++){?>
<table class="coauthortable">
<tr>
<td>Title * </td>
<td>
<select name="contactTitle<? echo $i;?> ">
<option value="">Select Title</option>
<option value="Dr">Dr</option>
<option value="Miss">Miss</option>
<option value="Mr">Mr</option>
<option value="Mrs">Mrs</option>
<option value="Ms">Ms</option>
<option value="Professor">Professor</option>
</select>
</td>
</tr>
<tr>
<td>First Name *</td>
<td><input type="text" name="contactFirstName<? echo $i;?>" style="width:280px;" /></td>
</tr>
<!--Actual program has more rows-->
</table>
<?php } ?>
我希望将验证规则添加到动态生成的输入字段中:似乎我无法在验证方法本身中正确执行此操作,因为我不知道将要生成的实际字段数:
$("#papersubmitform").validate(
{
rules:{
//Can't add rules this way as I do not know how many rows will be generated.
contactTitle: {required: true},
contactFirstName: { required:true},
});
我尝试添加规则,这些规则将在页面加载后添加到 $(document).ready(function() 上,但它似乎不起作用。
$(document).ready(function() {
$(".coauthortable").each(function(i){
$(this).find(":input").each(function(){
$(this).rules("add",{required:true});
});
});
$("#papersubmitform").validate();
});
有人对我应该如何将规则添加到动态创建的元素有任何建议吗?
我已经在我自己的服务器上创建了一个示例页面...http://www.kosherjellyfish.com/test/index.php
您只需要按照相反的顺序进行即可:
$(document).ready(function() {
$("#papersubmitform").validate();
$(".coauthortable").each(function(i){
$(this).find(":input").each(function(){
$(this).rules("add",{required:true});
});
});
});