jquery.validate因多个select输入而失败

jquery.validate因多个select输入而失败,jquery,validation,Jquery,Validation,可能是个新手问题,但我还是要问。有一个我正在处理的多页表单,需要在多页上验证多个字段。现在,我只是在第一页上工作,验证帐号、出生日期(分为3个选择框)和SSN。 我在jquery 1.8中使用jquery.validate脚本,由于某种原因,当我尝试验证所选的月份、日期和年份时,它失败了。有三个html选择的任何原因都会导致jquery.validate脚本失败。仅供参考,这是Basistance的jquery.validate脚本: <script type="text/javascri

可能是个新手问题,但我还是要问。有一个我正在处理的多页表单,需要在多页上验证多个字段。现在,我只是在第一页上工作,验证帐号、出生日期(分为3个选择框)和SSN。 我在jquery 1.8中使用jquery.validate脚本,由于某种原因,当我尝试验证所选的月份、日期和年份时,它失败了。有三个html选择的任何原因都会导致jquery.validate脚本失败。仅供参考,这是Basistance的jquery.validate脚本:

<script type="text/javascript" src="jqueryBase/jquery-1.8.3.js"></script>
<script src="jqueryBase/jquery.validate.js"></script>
<script src="jqueryBase/jquery.maskedinput.min.js"></script>

<script type="text/javascript">
$.validator.setDefaults({
    submitHandler: function() { alert("submitted!"); }
});

$().ready(function() {
$("#accountNumber").mask("9999-9999-9999-9999");
   $("#ssn").mask("999-99-9999");

    // validate signup form on keyup and submit
    $("#accountInformation").validate({
        rules: {
            firstname: "required",
            lastname: "required",
            accountNumber: {
                required: true,
                maxlength: 16
            },
            ssn: {
                required: true,
                minlength: 9
            },
            month: {
                required: true,
            },
            day: {
                required: true,
            },
            year: {
                required: true,
            },

        },
        messages: {
            accountNumber: "Please enter your Account Number",
            month: {
                required: "Please select the month you were born",
            },
            password: {
                required: "Please select the day you were born",
            },
            confirm_password: {
                required: "Please select the year you were born",
            },
            ssn: {
                required: "Please enter your Social Security Number",
            },
        }
    });

});
</script>
`<div id="main">`

`<p>Step 1 - Account Information</p>`


`<form class="cmxform" id="accountInformation" method="post" action="page2.html">`
`<fieldset>`
    `<p>`
        `<label for="accountNumber">Account Number</label>`
        `<input id="accountNumber" name="accountNumber" placeholder="XXXXXXXXXXXXXXXX" type="tel" size="32" />`
    `</p>`
 <label for="dob">Date of Birth</label>
<table class="tabless">
  <tr>
    <td><select name="month" data-theme="e">
        <option selected="" value="Default">Month</option>
        <option value="January">January</option>
        <option value="February">February</option>
        <option value="March">March</option>
        <option value="April">April</option>
        <option value="May">May</option>
        <option value="June">June</option>
        <option value="July">July</option>
        <option value="August">August</option>
        <option value="September">September</option>
        <option value="October">October</option>
        <option value="November">November</option>
        <option value="Decemeber">December</option>
      </select></td>
    <td><select name="day">
        <option selected="" value="Default">Day</option>
        <option value="1">1</option>
        <option value="2">2</option>
        <option value="3">3</option>
        <option value="4">4</option>
        <option value="5">5</option>
        <option value="6">6</option>
        <option value="7">7</option>
        <option value="8">8</option>
        <option value="9">9</option>
        <option value="10">10</option>
        <option value="11">11</option>
        <option value="12">12</option>
        <option value="13">13</option>
        <option value="14">14</option>
        <option value="15">15</option>
        <option value="16">16</option>
        <option value="17">17</option>
        <option value="18">18</option>
        <option value="19">19</option>
        <option value="20">20</option>
        <option value="21">21</option>
        <option value="22">22</option>
        <option value="23">23</option>
        <option value="24">24</option>
        <option value="25">25</option>
        <option value="26">26</option>
        <option value="27">27</option>
        <option value="28">28</option>
        <option value="29">29</option>
        <option value="30">30</option>
        <option value="31">31</option>
      </select></td>
    <td><select name="year">
        <option selected="" value="Default">Year</option>
        <option value="">1944</option>
        <option value="">1945</option>
        <option value="">1946</option>
        <option value="">1947</option>
        <option value="">1948</option>
        <option value="">1949</option>
        <option value="">1950</option>
        <option value="">1951</option>
        <option value="">1952</option>
        <option value="">1953</option>
        <option value="">1954</option>
        <option value="">1955</option>
        <option value="">1956</option>
        <option value="">1957</option>
        <option value="">1958</option>
        <option value="">1959</option>
        <option value="">1960</option>
        <option value="">1961</option>
        <option value="">1962</option>
        <option value="">1963</option>
        <option value="">1964</option>
        <option value="">1965</option>
        <option value="">1966</option>
        <option value="">1967</option>
        <option value="">1968</option>
        <option value="">1969</option>
        <option value="">1970</option>
        <option value="">1971</option>
        <option value="">1972</option>
        <option value="">1973</option>
        <option value="">1974</option>
        <option value="">1975</option>
        <option value="">1976</option>
        <option value="">1977</option>
        <option value="">1978</option>
        <option value="">1979</option>
        <option value="">1980</option>
        <option value="">1981</option>
        <option value="">1982</option>
        <option value="">1983</option>
        <option value="">1984</option>
        <option value="">1985</option>
        <option value="">1986</option>
        <option value="">1987</option>
        <option value="">1988</option>
        <option value="">1989</option>
        <option value="">1990</option>
        <option value="">1991</option>
        <option value="">1992</option>
        <option value="">1993</option>
        <option value="">1994</option>
        <option value="">1995</option>
        <option value="">1996</option>
        <option value="">1997</option>
        <option value="">1998</option>
        <option value="">1999</option>
        <option value="">2000</option>
        <option value="">2001</option>
        <option value="">2002</option>
        <option value="">2003</option>
        <option value="">2004</option>
        <option value="">2005</option>
        <option value="">2006</option>
        <option value="">2007</option>
        <option value="">2008</option>
        <option value="">2009</option>
        <option value="">2010</option>
        <option value="">2011</option>
      </select></td>
  </tr>
</table>

    <p>
    <label for="accountNumber">Social Security Number</label>
<input type="tel" id="ssn" name="ssn" maxlength="9" placeholder="XXX-XX-XXXX" size="32" />
    </p>


    <p>
        <input class="submit" type="submit" value="Submit"/>
    </p>
</fieldset>

$.validator.setDefaults({
submitHandler:function(){alert(“submitted!”);}
});
$().ready(函数()){
$(“#accountNumber”).mask(“9999-9999-9999-9999”);
$(“#ssn”)。掩码(“999-99-9999”);
//在键盘上验证注册表格并提交
$(“#会计信息”)。验证({
规则:{
名字:“必选”,
姓氏:“必需”,
帐号:{
要求:正确,
最大长度:16
},
ssn:{
要求:正确,
最小长度:9
},
月份:{
要求:正确,
},
日期:{
要求:正确,
},
年份:{
要求:正确,
},
},
信息:{
帐号:“请输入您的帐号”,
月份:{
必填:“请选择您出生的月份”,
},
密码:{
必填:“请选择您出生的日期”,
},
确认密码:{
必填:“请选择您出生的年份”,
},
ssn:{
必填:“请输入您的社会保险号码”,
},
}
});
});
``
` 步骤1-帐户信息

` `` `` `` `帐号` `` `

` 出生日期 月 一月 二月 前进 四月 也许 六月 七月 八月 九月 十月 十一月 十二月 白天 1. 2. 3. 4. 5. 6. 7. 8. 9 10 11 12 13 14 15 16 十七, 18 19 20 21 22 23 24 25 26 27 28 29 30 31 年 1944 1945 1946 1947 1948 1949 1950 1951 1952 1953 1954 1955 1956 1957 1958 1959 1960 1961 1962 1963 1964 1965 1966 1967 1968 1969 1970 1971 1972 1973 1974 1975 1976 1977 1978 1979 1980 1981 1982 1983 1984 1985 1986 1987 1988 1989 1990 1991 1992 1993 1994 1995 1996 1997 1998 1999 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 社会保险号码

  • 为所有年份选项添加值
  • 将其各自选择中的“日”、“月”和“年”的值更改为空字符串,以便validate知道用户尚未选择值

  • 对于
    测试

    “它失败了”并没有告诉我们任何事情。它怎么会失败?然后显示您的html。年份规则后的逗号如何?删除最后一条规则和最后一条消息上的逗号,并告诉我们失败的含义。如果有人想知道,这个额外的逗号只会在IE8及以下版本中返回语法错误。但是,是的,你应该删除它。如果能看到HTML并知道“失败”是什么意思,那就太好了。一个JSFIDLE演示也会很有帮助。就像手套一样!谢谢你,恩里科。很抱歉提出了补救问题。也许还不如跟踪我。这只是由五部分组成的表单的第一页,该表单也有自定义验证,需要在Worklight 5.0.2中运行,因此我确信在完成之前,我至少还有20个问题。很高兴听到:-)我将密切关注您接下来的问题;我可以利用这些要点。