0
我使用下面顯示的代碼創建確認框,當從<select>
對話框中選擇特定選項時。當選擇「bar」選項時,我可以很好地得到確認對話框。但是,如果我取消了它,選定的選項將變爲空白。如果我先選擇另一個選項,然後選擇「bar」並取消,它將返回到先前選擇的選項(這是所需的行爲)。爲什麼第一次取消失敗,而後來的取消不會呢?確認選擇不按預期與jQuery 10.1一起工作
<html>
<head>
<title>Test of jQuery confirm select</title>
<script src="http://code.jquery.com/jquery-1.10.1.min.js"></script>
<script type="text/javascript">
$(function(){
$('#example').change(function() {
var selected = $(this).val();
if (selected == 'bar') {
if (!confirm('Are you sure?')) {
$(this).val($.data(this, 'current')); // added parenthesis (edit)
return false;
}
}
$.data(this, 'current', $(this).val());
});
});
</script>
</head>
<select id="example">
<option value="none" selected="selected">--Select an Option--</option>
<option value="foo">foo</option>
<option value="bar">bar</option>
<option value="que">que</option>
</select>
<body>
</body>
</html>
只是爲了要清楚,如果我去,從這種情況不會發生任何其他選項「欄」。但是,如果「bar」是我選擇的第一個選項,它總是會發生。
謝謝!這回答了我的問題。 – Frederic