2017-06-03 8 views
0

私は、単純なドメインのwhoisの形があります。jQueryの投稿時にonclickイベントを使用してajaxフォームを検証する方法は?

<form id="domaincheck" class="form-inline ltr" method="post"> 
    <input type="text" class="form-control center input-md" name="sld" id="sld" placeholder="pleade enter domain name" required> 
    <select class="form-control ltr input-md input-group-addon" id="tld" name="tld" multiple="multiple"> 
     <option value="com" selected="">.com</option> 
     <option value="ir">.ir</option> 
     <option value="net">.net</option> 
     <option value="org">.org</option> 
     <option value="co">.co</option> 
     <option value="xyz">.xyz</option> 
     <option value="biz">.biz</option> 
     <option value="info">.info</option> 
     <option value="asia">.asia</option> 
     <option value="us">.us</option> 
     <option value="mobi">.mobi</option> 
     <option value="name">.name</option> 
    </select> 
    <button type="button" class="btn btn-info" onclick="get_whois()">check!</button> 
</form> 

をして検証するjquery validation pluginを使用しています。 は、私は、入力が有効であるまで、送信要求を回避するためのonclickイベントを持つボタンを無効にする方法を今4.

$("#domaincheck").validate({ 
    rules: { 
     sld: { 
      required: true, 
      minlength: 4 
     } 
    }, 
    messages: { 
     sld: { 
      required: "Please input domain name!", 
      minlength: jQuery.validator.format("Please, at least {0} characters are necessary") 
     } 
    } 
}); 

でなければならない最低限の文字を設定するための入力を検証するために、このコードを追加しました。 また、これらの文字(a-z A-zと " - ")だけが入力を入力するのに有効であると言うルールを追加します。

ヘルプ

おかげ

答えて

1

Click Here For Demo JSFiddle

$.validator.addMethod("sldRegex", function(value, element) { 
      return this.optional(element) || /^[A-Za-z\-]+$/i.test(value); 
}, "Username must contain only letters, numbers, or dashes."); 
$("#domaincheck").validate({ 
     rules: { 
      sld: { 
       required: true, 
       minlength: 4, 
       sldRegex: true 
      } 
     }, 
     messages: { 
      sld: { 
       required: "Please input domain name!", 
       minlength: jQuery.validator.format("Please, at least {0} characters are necessary") 
      } 
     } 
     ,submitHandler: function(form) { 

        form.submit() ; 
       } 
    }); 
+0

はあなたに感謝が、私はボタンのタイプ=「ボタン」を使用する必要がありますし、それはonclickのイベントによって、要求を呼び出すAjaxフォームです。 onclickイベント送信リクエストをクリックした直後。また、ボタンのタイプをサブミットしてリダイレクトし、ページを更新します。 –

+0

だから、あなたは、あなたのajaxリクエストをsubmitHandlerの中に置くことができます:function(form){ //ここにコード } –

+1

ありがとうございます。よくやった! –

関連する問題