0

如果用户在选择字段中选择“是”值,我有一些 jQuery 会显示一个确认框。

在确认框中,如果用户单击确定按钮,我希望值保持原样。如果用户单击“取消”按钮,我希望该值变回以前的值。

我几乎已经使用下面的代码完成了这项工作,除了当用户单击“取消”按钮时,该值保持为“是”而不是返回“否”。

任何解决此问题的帮助将不胜感激。

<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>

谢谢,

斯特

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 回答