Javascript 带有Jquery选项卡和jqgrid的Jquery日期选择器问题
我有一个有标签的JSP页面。每个选项卡加载一个jqgrid(在所有三个选项卡中加载相同的JSP)。我在jqgrid中有一个过滤器,对于日期字段,我使用了一个日期选择器 datepicker在第一个选项卡中运行良好,但当我在其他选项卡中尝试在datepicker中点击“Prev”/“Next”时,它会跳到1900年。请参阅以下图片: 日期选择器在第一个选项卡中按预期工作: 在第二个选项卡中点击prev时,日期选择器跳至1899: 我尝试在jquery-ui-1.10.0.custom.js中调试代码 对于这两种情况,我得到了以下输出: 第一个选项卡:Javascript 带有Jquery选项卡和jqgrid的Jquery日期选择器问题,javascript,jquery,jsp,jqgrid,datepicker,Javascript,Jquery,Jsp,Jqgrid,Datepicker,我有一个有标签的JSP页面。每个选项卡加载一个jqgrid(在所有三个选项卡中加载相同的JSP)。我在jqgrid中有一个过滤器,对于日期字段,我使用了一个日期选择器 datepicker在第一个选项卡中运行良好,但当我在其他选项卡中尝试在datepicker中点击“Prev”/“Next”时,它会跳到1900年。请参阅以下图片: 日期选择器在第一个选项卡中按预期工作: 在第二个选项卡中点击prev时,日期选择器跳至1899: 我尝试在jquery-ui-1.10.0.custom.js中调
LOG: {
id : "gs_vpReportDate",
input : [object Object],
selectedDay : 20,
selectedMonth : 10,
selectedYear : 2013,
drawMonth : 10,
drawYear : 2013,
inline : false,
dpDiv : [object Object],
settings : [object Object],
append : [object Object],
trigger : [object Object],
lastVal : "",
currentDay : 0,
currentMonth : 0,
currentYear : 0,
yearshtml : null,
_keyEvent : false
}
第二个选项卡:
LOG: {
id : "gs_vpReportDate",
input : [object Object],
selectedDay : 0,
selectedMonth : 0,
selectedYear : 0,
drawMonth : 0,
drawYear : 0,
inline : false,
dpDiv : [object Object],
settings : [object Object],
append : [object Object],
trigger : [object Object]
}
你知道为什么会有这种奇怪的行为吗
其他信息:
id是动态分配的
下面是我的jqgrid专栏:
{ name: 'vpReportDate', index: 'vpReportDate',datefmt:"m/d/Y", sorttype:"date", width: 65, searchoptions:{dataInit:showDatePicker}, sortable:true }
function showDatePicker(elem) {
$(elem).datepicker({dateFormat:'mm/dd/yy', changeYear: true, changeMonth: true}).change(function() {
$("#dasWorkQueueGrid_" + activeTabId)[0].triggerToolbar();
});
};
我找到了解决我问题的办法。问题的根本原因是,当在单击第二个选项卡时加载网格时,第一个网格已经存在于DOM中,这导致了所有问题。所以我在加载网格之前所做的就是调用gridDestroy来销毁DOM中存在的所有网格-
$("[id^=dasWorkQueueGrid_]").jqGrid('GridDestroy');
- 我使用jquery选择器中的通配符来标识所有网格
$("#dasWorkQueueGrid_" + activeTabId).jqGrid({
*** Grid Code ***
});
是否可以为每个选项卡中的每个日历实例指定不同的id?可能是一个conflict@geedubbid是动态分配的。下面是我的jqgrid专栏:'code'{name:'vpReportDate',index:'vpReportDate',datefmt:'m/d/Y',sorttype:'date',width:65,searchoptions:{dataInit:showDatePicker},sortable:true}函数showDatePicker(elem){$(elem).datepicker({dateFormat:'mm/dd yy',changeYear:true,changeYear:true,changeMonth:true}).change(函数(){(“#dasWorkQueueGrid$”+activeTabId)[0].triggerToolbar();});};请编辑您的问题以包含其他信息
$("#dasWorkQueueGrid_" + activeTabId).jqGrid({
*** Grid Code ***
});