【发布时间】:2018-09-21 12:17:36
【问题描述】:
我正在使用 materializecss Datepicker (https://materializecss.com/pickers.html),这看起来应该非常简单,所以我有点失去理智了。简而言之,我试图仅在单击“确定”按钮时触发事件,但无法在提供的 onClose() 函数中识别该事件。如果我尝试监听特定的按钮点击,我会丢失 onClose() 函数附带的所有内容(它很好地打包了我需要的关于该事件的所有信息)。
有什么方法可以通过 onClose() 函数确定是哪个按钮导致 onClose() 触发?
当谈到 javascript 和 jquery 时,我无疑是个新手,因此感谢您提供任何帮助。
HTML
<input type="text" class="datepicker" value="8/4/2018" job="533">
用于初始化日期选择器的 Javascript 代码
$(document).ready(function(){
$('.datepicker').datepicker({
"format": "m/d/yyyy",
onClose() {
// only do something if this was fired from the "Done" button
}
})
});
已创建日期选择器模式
<div class="modal datepicker-modal" id="modal-a5a43c91-2426-5565-c216-1d8ccd0cfc1d" tabindex="0">
<div class="modal-content datepicker-container">
<div class="datepicker-date-display">
<span class="year-text">
</span>
<span class="date-text">
</span>
</div>
<div class="datepicker-calendar-container">
<div class="datepicker-calendar">
</div>
<div class="datepicker-footer">
<button class="btn-flat datepicker-clear waves-effect" style="visibility: hidden;" type="button">
</button>
<div class="confirmation-btns">
<button class="btn-flat datepicker-cancel waves-effect" type="button">
Cancel
</button>
<button class="btn-flat datepicker-done waves-effect" type="button">
Ok
</button>
</div>
</div>
</div>
</div>
</div>
【问题讨论】:
-
您是指“确定”按钮而不是“完成”按钮吗?我在您的代码中看不到“完成”按钮,所以我假设您的意思是“确定”按钮。
-
“如果我尝试监听特定的按钮点击,我会丢失 onClose() 函数附带的所有内容(它很好地打包了我在该事件中需要的所有信息)。” 你确定不能只使用普通的
click处理程序吗?您对onClose活动有什么特别需要? -
@david 抱歉,我的意思是“确定”按钮。
-
@David 我正在寻找的具体部分是日期选择器输入中的
jobid。如果我只听按钮点击,我不会轻易获得该作业 ID,并且该按钮是动态生成的,因此我也无法轻松地将作业 ID 分配给按钮本身。
标签: javascript jquery materialize