2016-09-30 7 views
1

基本的にユーザーがデータを入力したかどうかを確認していない場合にアラートを表示するjQuery UIスライダがあります。問題は、アラートがうまく表示されていますが、アラートボックスを閉じると、スライダが別のランダム値にジャンプし、アラートボックスが再び表示されます。これにはパターンがないようです。jQueryスライダが異なる値にジャンプします

jQuery(document).ready(function() { 

     jQuery("button.compareLoans").hide(); 
     jQuery("p.toBorrow").hide(); 

     jQuery("#slider").slider({ 
    value:2000, 
     min: 100, 
     max: 10000, 
     step: 100, 
     slide: function(event, ui) { 

     if(!$("#age").val()) { 
      alert("Please Enter Your Age"); 
     } 

     else if (!$("#name").val()) { 
      alert("Please Enter Your Name"); 
     } 

     else if (!$("#email").val()) { 
      alert("Please Enter Your Email"); 
     } 

     else { 

      jQuery("#amount").val(ui.value); 
      jQuery("p.loanSummary").text("Searching for loan amount €" + ui.value); 

      jQuery("button.compareLoans").show(); 
      jQuery("p.toBorrow").show(); 

     jQuery(".userData").fadeOut("slow"); 

     jQuery.post(
     MyAjax.ajaxurl, 
     { 
      action : "myajax-submit", 
      postID : MyAjax.postID, 
      postCommentNonce : MyAjax.postCommentNonce, 
      amount : $("#slider").slider("value"), 
      age : $("#age").val(), 
     }, 
     function(response) { 
      $("#content_update").html(response); 
     } 
    ); 

    } 

     } 
}); 
+0

あなたがフィドルに問題を再現した場合や、HTMLやスライダーを手助けする場所があれば、それは素晴らしいことでしょう。 –

+0

完了https://jsfiddle.net/ro03gpf2/ – AppleTattooGuy

答えて

1

スライダーを移動させながらスライドイベントが複数回トリガされます:

任意の入力を大幅に次のようにコードが、理解されるであろう。スライダを動かすと、初めてトリガされ、アラートをキャンセルすると、すぐにトリガされます。

あなたはストップを見てみたいことがあり - 代わりに、イベント:http://api.jqueryui.com/slider/#event-stop

ユーザーがスライダーを解放したら、それは唯一のトリガーです。

+0

アラートの1つを表示すると、スライダの位置をデフォルトに戻すことができますか? – AppleTattooGuy

+0

うん。 jQuery( "#slider").slider( "value"、123)を追加するだけです。警告が表示された後(123をデフォルト値に置き換えてください) – mwoelk

+0

偉大な、あなたの助けをありがとう – AppleTattooGuy

関連する問題