0

フォームを送信する前に値が数値かどうかを確認する簡単なコードがありますが、数値でなくてもフォームは送信されます

<form action="asdasd" method="POST" id="my_form" >
<input type="text" name="userphone" id="userphone" />
<br />
<input type="submit" name="register" id="register" value="register" />
</form>

jsコード

$(document).ready(function() {

$('#userphone').blur(function () {
var phone = $("#userphone").val();
var phonelen = phone.length;

if (!$.isNumeric(phone) || phonelen<6) {
    $("#userphone").css("background-color", "#ff9f9f");
    return false;
} else {
    $("#userphone").css("background-color", "#fff");
    return true;
}
})
});

function check_user_phone(){ 
var phone = $("#userphone").val();
var phonelen = phone.length;

if (!$.isNumeric(phone) || phonelen<6) {
    return false;
} else {
    return true;
}
} 

$("#my_form").submit(function(){
 if (!check_user_phone()) {
    return false;
} else {
    return true;
}
})

ただし、電話の値が数値でなくても、フォームはデータを送信しています

4

1 に答える 1

1

JSFiddle オプションを からonLoadに変更してみてくださいNo wrap - in <head>

JSFiddle:- http://jsfiddle.net/adiioo7/wfpbV/5/

JS

jQuery(function(){
    $("#reg").submit(function(e){
        if(!check_phone() ){  
            e.preventDefault();
        }
    });
});
于 2013-05-20T12:38:04.793 に答える