0

デフォルトのユーザー名とパスワードの値が変更されていないか空白のままになっている場合、フォームの送信を無効にするにはどうすればよいですか? 何も変更または入力されていない場合は、警告メッセージも表示したいと思います。これが私のコードです:

<script>    
$(document).ready(function(){

        $('input[type=text], input[type=password]').focus(function() {

            if(this.value === this.defaultValue)
            {
                 $(this).val("");
            }
        }).blur(function(){
            if($(this).val().length == 0)
            {
                $(this).val(this.defaultValue);
            }
        });
    })
</script>

<form id=""form1" action="process.php" method="post">
<input type="text" name="un" value="Username"/>
<input type="password" name="pw" value="Password"/>
<input type="submit" value="Submit"/>
</form>

助けてください!前もって感謝します!

4

4 に答える 4

0

それは仕事です..

<form id="form1" action="" method="post">
    <input type="text" name="un" default="Username" value="Username"/>
    <input type="password" name="pw" default="Password" value="Password"/>
    <input type="button" value="Submit" onclick="validateForm()"/>
</form>

<script>

function validateForm(){
            if($('input[type=text], input[type=password]').val()!=$('input[type=text], input[type=password]').attr("default")){
                $("#form1").submit();
            }else{
                return false;
            }
        }

$(document).ready(function(){

        $('input[type=text], input[type=password]').focus(function() {

            if($(this).val() === $(this).attr("default"))
            {
                 $(this).val("");
            }
        }).blur(function(){
            if($(this).val().length == 0)
            {
                $(this).val($(this).attr("default"));
            }
        });
    });


</script>
于 2013-03-28T16:39:40.213 に答える
0

html を次のように変更します。

   <input type="submit" value="Submit" onclick="return validateForm();"/>

関数検証フォーム:

function validateForm(){
    var defaultValue ='blabla';
    var text = $('input[type=text]').val();
    var pass= $('input[type=password]').val();
    if(text.length==0||text===defaultValue||pass.length==0||pass===defaultValue){
       return false;
       //alert if you want
    }
    else{
       return true;
      }
    }
于 2013-03-28T16:26:31.223 に答える
0

jQuery Validate Pluginの実装を確認してください。

これが実用的なフィドルです。

<body>

.... other content ....

<form id="form1" action="process.php" method="post">
    <input type="text" name="un" placeholder="Username" /><br />
    <input type="password" name="pw" placeholder="Password" /><br />
    <button type="submit">Submit</button>
</form>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.11.1/jquery.validate.js"></script>
</body>

    <script type="text/javascript">
    $('#form1').validate({
        errorElement: 'label',
        rules: {
            un: {
                required: true,
                minlength: 1
            },
            pw: {
                required: true
            }
        },
        messages: {
            un: {
                required: 'Please enter your name.'
            },
            pw: {
                required: 'Please enter your password.',
            }
        },
        submitHandler: function (form) {
            form.submit();
        }
    });
    </script>
于 2013-03-28T16:28:43.830 に答える
0

そこに行きます(作業フィドル)、入力でのIDの使用に注意してください:

<form id="form1" action="process.php" method="post">
    <input type="text" id="un" name="un" value="Username"/>
    <input type="password" id="pw" name="pw" value="Password"/>
    <input type="submit" value="Submit"/>
</form>

純粋な JS の場合:

var form1 = document.getElementById("form1");
form1.onsubmit = function() {
    var un = document.getElementById("un");
    var pw = document.getElementById("pw");
    if (un.value == "" || pw.value == "") {
        return false;
    }
};
于 2013-03-28T16:40:59.767 に答える