繁体   English   中英

为什么弹出窗口加载后立即触发我的datapicker onSelect事件?

[英]Why is my datapicker onSelect event firing as soon as the popup loads?

我创建了一个在部分视图中加载的日期选择器。 局部视图本身会加载到弹出对话框中。 不确定是否相关,但是当对话框弹出时,日期选择器已经打开。 似乎,当日期选择器加载时,默认情况下会触发onSelect事件。

我在这样的div中有日期选择器:

 <div class ="ui-widget" >
      <label for ="datep">Date: </label><input id="datep" />
  </div>

这是脚本:$(function(){

        $("#datep").datepicker({ showOn: "both", buttonText: "Select Date", changeMonth: true, showButtonBar: true, changeYear: true, yearRange: "-2:+2", showOtherMonths: true, onSelect: function (date, datepickder) {
            var tcherData = { selectedDate: date, teacherID: teacherData };
            $.ajax({
                type: "GET",
                url: "/Schedule/GetSchedule",
                data: tcherData,
                datatype: "html",
                sucess: function (data) {

                }
            });
        }
     });

为什么在弹出窗口加载后立即触发onSelect事件? 如何防止这种情况发生? 感谢您对此的任何帮助!

问题在于,当打开对话框时,焦点将设置在触发日期选择器的输入上。 解决方案是要么在显示对话框时在输入时触发模糊事件,要么可以在调用对话框之前使用此代码,它将清除自动对焦:

$.ui.dialog.prototype._focusTabbable = function(){};

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM