0

ユーザーが選択フィールドで「はい」の値を選択した場合に確認ボックスを表示するjQueryがあります。

確認ボックスで、ユーザーが[OK]ボタンをクリックした場合、値をそのままにしておきます。ユーザーが[キャンセル]ボタンをクリックした場合、値を以前の値に戻したいと思います。

ユーザーが[キャンセル]ボタンをクリックすると、値が「いいえ」に戻るのではなく「はい」のままになることを除いて、これは以下のコードでほぼ機能しています。

これを修正するための助けをいただければ幸いです。

<script>
$(document).ready(function(){
$('#publish_details').change(function(){
    if($(this).val() == 'Yes')
    { window.confirm("Are you sure you want to publish these details?"); }
    });
});
</script>

<select name="publish_details" id="publish_details" />
    <option value="No" selected="selected">No</option>
    <option value="Yes">Yes</option>
</select>

ありがとう、

Ste

4

2 に答える 2

3

確認されていない場合、新しい値を設定していません:

if($(this).val() == 'Yes'){ 
    if (!window.confirm("Are you sure you want to publish these details?")){
        $(this).val('No');
    }
}

または、単純に確認値を返すこともできます (確認されていない場合は false)。

if($(this).val() == 'Yes'){ 
    return window.confirm("Are you sure you want to publish these details?");
}
于 2012-11-11T05:38:43.640 に答える
2

次のコードで動作させることができました。

HTML

<select name="publish_details" id="publish_details" />     
    <option id="no" value="No" selected="selected">No</option>     
    <option value="Yes">Yes</option> 
</select>

JavaScript

$(document).ready(function(){
   $('#publish_details').change(function(){
        if($(this).val() == 'Yes'){
            var r=confirm("Are you sure you want to publish these details?")
            if (!r){
              $('#no').attr('selected', 'selected');
           }
         }
    });
});
于 2012-11-11T06:01:28.303 に答える