我正在使用Jquery UI日期選擇器爲我的Rails應用程序,並且我想觸發一個事件,只要有人點擊下個月的按鈕。但它並沒有觸發任何東西。我的JQuery版本是v1.12.4。Jquery事件監聽器不工作附加元素(和他們應該,不應該他們?)
這裏是我的html代碼示例:
<input type='text' name='date_from' class="form-control date_picker" placeholder="Data de ida..." id='datetimepicker1' required/>
<div id="datepicker1" class="calendar"></div>
的日期選擇器的HTML代碼的jQuery UI生成的默認。
因此,這裏是我的JavaScript的嘗試:
$('body').on('click','.ui-datepicker-next',function(e){
console.log('Next/prev month')
e.preventDefault();
});
它做什麼!它不會在控制檯上產生錯誤,它不會打印任何內容,也不會將點擊事件附加到類別爲ui-datepicker-next
的元素上。
如果我將以下代碼複製並粘貼到控制檯中,它對於文檔中的當前元素非常適用。
$('.ui-datepicker-next').click(function(e){
console.log('Next/prev month')
e.preventDefault();
});
它從來沒有發生在我身上過,所以我很抱歉,如果這個問題應該更詳細,但我真的不知道我應該在這裏提到什麼。
編輯:
的jsfiddle:https://jsfiddle.net/9484zzrL/
這是我能做的,到目前爲止,重新創建的jsfiddle問題最好的。 如果您點擊選定月份的某一天,那很好,但如果您更改月份,則不再有效。
編輯2:
我相信這完全重現了我的問題。當我在日曆中選擇任何日期時,不會觸發事件。
https://jsfiddle.net/awhwr3uv/
你''元素不具備類「UI的日期選擇器 - 未來」。 – Pointy
你能重新創建一個片段嗎? –
我甚至沒有看到你將日期選擇器附加到輸入。像'$('#datepicker1')。datepicker();' – gforce301