2017-09-04 5 views
0

オプションの値がajaxを使用して正方形である場合、これが正方形であることを警告したいと思います。しかし、私の問題は、ページに入り、正方形のオプションを選択すると何も起こらず、これを警告するためにリフレッシュする必要があることです。リフレッシュなしで特定のオプションが選択されたときにメッセージを通知する

これは、Ajaxで処理できるように二乗値が設定されているかどうかをチェックするスクリプトです。

$(document).ready(function() { 
if($('#SelectBox').val() == 'square'){ 
    $.ajax({ 
     type:'post', 
     url:'views/index/test', 
     data:{}, 
     success:(function (response) { 
      alert(response) 
     }) 
    }) 
} 
}) 

が、これは私のtest.phpを

<?php echo "this is square"?> 

であり、これらは、ページのロードに一度ご確認を実行している

<select name="selected_option" id="SelectBox"> 
<option value="default" selected="selected">Select one option </option> 
<option value="square">Square</option> 
<option value="rectangle">Rectangle</option> 
</select> 
+2

を使用すると、ページのロード時に一度だけ値をチェックしているためだが、ユーザーが実際にそれを変更した後でないこと。 jQueryでchangeイベントハンドラを使用する方法を読んでください... – CBroe

答えて

0

私のタグです。代わりに、selectchangeイベントにイベントハンドラをフックアップ:

$(document).ready(function() { 
    $('#SelectBox').on("change", function() {   //**** 
     if ($('#SelectBox').val() == 'square') {  // Can use `$(this).val()` instead here 
      $.ajax({ 
       type: 'post', 
       url: 'views/index/test', 
       data: {}, 
       success: (function(response) { 
        alert(response) 
       }); 
      }); 
     } 
    }); 
}); 
関連する問題