仅验证任何特定提交按钮的几个字段

时间:2011-08-12 07:01:07

标签: jquery jquery-validate

我正在使用jQuery Validation插件(http://bassistance.de/jquery-plugins/jquery-plugin-validation/

我面前有一个非常奇怪的场景。

我有一个表单,有5个不同的提交按钮

<form id="frm1" name="frm1" method="post" action="save.php">
  ------- input fields here---
  <input type="submit" name="submit" value="update account info">

  ------- input fields here---
  <input type="submit" name="submit" value="update address info">

  ------- input fields here---
  <input type="submit" name="submit" value="update credit-card info">

  ------- input fields here---
  <input type="submit" name="submit" value="update bank info">

  ------- input fields here---
  <input type="submit" name="submit" value="update other info">
</form>

现在,对于每个提交按钮,我需要验证几个字段(而不是所有字段)

说“更新帐户信息”提交,我需要使用以下ID验证以下输入字段:

 cust_fname
 cust_lname
 cust_age

说“更新其他信息”提交,我需要使用以下ID验证以下输入字段:

 married
 childerns

如何实现以下目标?

1 个答案:

答案 0 :(得分:4)

创建5个单独的表单是最简单的方法。然后,您可以将不同的特定验证绑定到每个表单。

或者您可以将验证绑定到提交按钮上的每次单击。 假设您将提交按钮更新为:

  <input type="submit" id="button_1" name="submit" value="update account info">

然后使用jquery,您可以将其绑定到:

$("#button_1").live("click", function() {
    $("#frm1").validate({
        rules: {
            cust_fname: "required", // of course set different options for every field
            cust_lname: "required", 
            cust_age: "required"
        }
    }); 
});

为每个按钮执行此操作。

编辑:已弃用直播。

$("#button_1").on("click", function() {
    $("#frm1").validate({
        rules: {
            cust_fname: "required", // of course set different options for every field
            cust_lname: "required", 
            cust_age: "required"
        }
    }); 
});