我有一个 id='form1' 的表单以及另一个带有 'form2' 的表单。在提交时,我想将两个表单作为对象传递给一个可以验证它们的验证函数。我对如何做到这一点感到困惑。如果我做类似的事情
var form = $('#form1');
Validate(form);
如何访问变量表单的文本字段?我不想编写重复的验证函数,因为这两种形式几乎相似。
我有一个 id='form1' 的表单以及另一个带有 'form2' 的表单。在提交时,我想将两个表单作为对象传递给一个可以验证它们的验证函数。我对如何做到这一点感到困惑。如果我做类似的事情
var form = $('#form1');
Validate(form);
如何访问变量表单的文本字段?我不想编写重复的验证函数,因为这两种形式几乎相似。
您也可以执行以下操作...
function validate(formid){
var form = $("#"+formid);
var name = form.find("#name");
var number = form.find("#number");
alert(name.val());
alert(number.val());
}
validate("form1");
validate("form2");
假设两种形式相似:
ValidateForm($("#form1, #form2"));
function ValidateForm(forms){
forms.each(function(){
$(this).find('input[type=text]').each(function(){
//Do something to validate text field
})
$(this).find('input[type=checkbox]').each(function(){
//Do something to validate checkbox
})
})
}
使用字段的名称,您可以执行以下操作:
function Validate(form) {
form = form[0]; // raw element
if (check_syntax(form.name.value)) { doSomething(); }
if (check_syntax(form.email.value)) { doSomething(); }
if (check_syntax(form.anotherfield.value)) { doSomething(); }
}
如果表单中的每个字段都有名称,您可以通过 form.fieldName 或 form['fieldName'] 访问它。
问候。
尝试.find。您的表单将用作上下文,您可以将其重用于不同的表单。
见下文:
var form = $('#form1');
function Validate(form){
var field1 = form.find(".field1");
}