3

次のスクリプトは、フォーカスを外すとエラーメッセージを表示します。jQuery 4.3以降に変更しましたが、変更しません。私は愚かなことをしていることを知っていますが、それを見つけることができません。アドバイスを提供してください。ありがとう

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
        <title>jQuery validation</title>
        <script src="http://code.jquery.com/jquery-1.4.2.js"></script> 
        <script src="jquery.validate.js" type="text/javascript"></script>
        <script src="additional-methods.js" type="text/javascript"></script>

        <script type="text/javascript">
            $(function(){
                var validate = $("#signupForm").validate({
                    rules: {phone:'phoneUS'},
                    messages: {phone:'Enter a valid phone number'},
                    submitHandler: function(form) {alert('submit');}
                });

            });
        </script>
    </head>
    <body>

        <form id="signupForm" method="get" action="">
            <label for="phone">phone</label>
            <input id="phone" name="phone" />
            <input type="submit" value="Submit" class="submit" />
        </form>
    </body>
</html>
4

1 に答える 1

2

phoneUSメソッドはで定義されていますadditional-methods.js。このファイルを含めると(そして入力にが含まれていることを確認してくださいtype='text')、正常に機能するはずです。

JavaScript:

$("#signupForm").validate({
    rules: {
        phone: 'phoneUS'
    },
    messages: {
        phone: 'Enter a valid phone number'
    },
    submitHandler: function(form) {
        alert('submit');
    }
});

HTML:

<form id="signupForm" method="get" action="">
    <label for="phone">phone</label>
    <input id="phone" name="phone" type="text"/>
    <input type="submit" value="Submit" class="submit" />
</form>​​​​​​​​​​​​​​​

例: http: //jsfiddle.net/kzDnx/5/

于 2012-08-24T19:20:50.037 に答える