2010-08-03 104 views
1

我有一個窗體有兩個複選框,「A」和「B」以及分成幾個步驟的窗體。如果選擇了「A」並且「B」不是,那麼當用戶單擊下一步按鈕時,我需要顯示警報,從而使表單停止一次。像如何避免驗證循環?

if ($("#A").is(":checked") && $("B").is(":not("checked")") { 
    alert("foo"); 
}); 

如何讓我這個僅出現一次,即顯示警報,用戶點擊「確定」關閉警報並允許通過表單的進展嗎? 感謝

回答

0

你的情況應該是這樣的:

if ($("#A").is(":checked") && $("B").is(":not(':checked')") { 
alert("foo"); 
}); 

更新:

使用jQuery的one處理。

+0

對不起,語法錯誤,但回到問題,當用戶點擊下一步按鈕(「 #step0Next「),並且只在他們第一次點擊時才發生?如果($(「A」)。is(「:checked」)&& $(「B」)。(「:not(':」))檢查')「){ //提醒她但只有一次 } }); – 2010-08-03 16:27:34

+0

@Bird:看看jquery'one'方法:http://api.jquery.com/one/ – Sarfraz 2010-08-03 16:30:49

+0

非常好,只是進入那個。thx – 2010-08-03 16:34:07

0
var userHasBeenAlerted = false; 
if ($("#A").is(":checked") && $("B").is(":not(':checked')" && !userHasBeenAlerted) { 
userHasBeenAlerted = true; 
alert("foo"); 
}); 

儘管我沒有真正地遵循'破入步驟',頁面重新加載等內容的含義嗎?如果是這樣的話,以更全局的方式設置它(如cookie或其他)