さて、基本的にJqueryサイトからjquery検証電話USプラグインのサンプルを使用しました。これは動作しているように見えます。jQuery検証 - 電話米国成功裏に提出しますか?
私の質問は、実際にフォームを成功時に「提出する」ことです。私は明らかにjQueryとJavascriptについて一般的にかなり新しいです。プラグインなしの通常のjQueryの検証では、それはかなり簡単に見えますが、正確に行う方法がわかりません。ここでは、コードです:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<script src="http://code.jquery.com/jquery-latest.js"></script>
<script type="text/javascript" src="http://dev.jquery.com/view/trunk/plugins/validate/lib/jquery.delegate.js"></script>
<script type="text/javascript" src="http://dev.jquery.com/view/trunk/plugins/validate/jquery.validate.js"></script>
<script type="text/javascript">
jQuery.validator.setDefaults({
debug: true,
success: "valid"
});;
</script>
<script>
$(document).ready(function(){
jQuery.validator.addMethod("phoneUS", function(phone_number, element) {
phone_number = phone_number.replace(/\s+/g, "");
return this.optional(element) || phone_number.length > 9 &&
phone_number.match(/^(1-?)?(\([2-9]\d{2}\)|[2-9]\d{2})-?[2-9]\d{2}-?\d{4}$/);
}, "Please specify a valid phone number");
$("#testinput").validate({
rules: {
field: {
required: true,
phoneUS: true
}
}
});
});
</script>
<style>#field { margin-left: .5em; float: left; }
#field, label { float: left; font-family: Arial, Helvetica, sans-serif; font-size: small; }
br { clear: both; }
input { border: 1px solid black; margin-bottom: .5em; }
input.error { border: 1px solid red; }
label.error {
background: url('http://dev.jquery.com/view/trunk/plugins/validate/demo/images/unchecked.gif') no-repeat;
padding-left: 16px;
margin-left: .3em;
}
label.valid {
background: url('http://dev.jquery.com/view/trunk/plugins/validate/demo/images/checked.gif') no-repeat;
display: block;
width: 16px;
height: 16px;
}
</style>
</head>
<body>
<form id="testinput" action="http://transworldmx.com">
<label for="field">Required, us phone number: </label>
<input class="left" id="field" name="field" />
<br/>
<input type="submit" value="Validate!" />
</form>
</body>
</html>
私はバックエンドを設定していますが、何らかの理由で「送信」をクリックすると、チェックマーク画像が表示されるだけで、フォームに設定したアクションが継続されません。アイデア? – Alpinestar22
バックエンドにコードを表示する必要があります。 –