2017-07-29 5 views
0

フォーム内のフィールドを検証してから、Ajaxを使用してフォームを送信する関数を起動しようとしていますが、検証はうまくいっていますが、Jqueryの検証は機能していますが、ajaxは送信されません。

あなたは私が

$(function() { 
      $.validator.addMethod("urlRegex", function(value, element) { 
     return this.optional(element) ||regex here .test(value); 
    }, "this should be url."); 

      $("#songvalid").validate({ 
     rules: 
     { 
      song: 
      { 
      required: true, 
      urlRegex: true 
      } 
     }, 

     messages: 
     { 
      song: 
      { 
      urlRegex:"من فضلك أدخل حروف وأرقام فقط" 
     } 

     }, 
     submitHandler: function(form){ 

       $("#error").fadeOut(); 
       $("#song-btn").html('<img src="btn-ajax-loader.gif" /> &nbsp; انتظر لحظات ...',); 


     $.ajax({ 
      url: 'song_process.php', 
      type: this.method, 
      data: $(this).serialize(), 
      success: function(responsd) { 

       if(responsd=="song"){ 
         $("#song-btn").html('&nbsp; تم الإرسال'); 
        } 
        else{ 

         $("#error").fadeIn(1000, function(){       
       $("#error").html('<div class="alert alert-danger"> <span class="glyphicon glyphicon-info-sign"></span> &nbsp; '+responsd+' !%</div>'); 
            }); 
        } 
      } 
     }); 

     return false; 

     } 
     }); 

}); 
+0

? –

+0

何を'はうまくいきませんか?コンソールでJavaScriptエラーをチェックしましたか? –

+0

ajaxの部分がまったく動作していません –

答えて

0

をソリューションを見つけ出す助けてくださいすることができます私は答えを見つけました!これに

type: this.method, 
data: $(this).serialize(), 

が、私はこれを変更し、 `console`出力番目は何

type: 'POST', 
data: $("#formName").serialize(), 
関連する問題