2016-10-03 58 views
0

當我更改select的值時,hasClass()在選擇中找不到.select_timedb,因此條件始終爲false。爲什麼是這樣?我使用相同的代碼爲input,它工作正常。如何使用HasClass進行選擇?

我這樣做,因爲有更多的選擇。當我改變其中的一個時,我需要知道該選擇是否有.select_timedb類來知道我是否需要做某件事。

<select class="form-control select_time select_timedb valid" id="time1" name="time1" aria-required="true" aria-invalid="false"> 
    <option value="1">1 h</option> 
    <option value="2">1 day</option> 
</select> 
$('body').on('change', 'select_timedb', function() { 
    if ($(this).hasClass("select_timedb")) { 
     // do something 
    } 
}); 
+3

刪除'.'從'喜歡select_timedb'這個'如果($(本).hasClass( 「select_timedb」)){' –

+0

錯字:您在'hasClass()'中檢查的類不應該有'.'前綴。無論如何,使用'hasClass()'是非常多餘的,因爲你的選擇器確保只有那些元素被選中。如果你動態地添加/刪除那個類,那麼唯一需要的方法是,但是在這種情況下,委託事件處理程序無論如何都是更好的主意 –

+0

無論如何,你已經在過濾我的'.select_timedb',這個事件的所有實例都有這個類嗎? – Curt

回答