我有一个在IE和Chrome中工作得很好的页面,但在Firefox和Opera中不起作用.当我说这不工作,我的意思是提交按钮根本不做任何事情.它是一个带有几个嵌套UpdatePanels的页面,还有一些jQueryUI手风琴.
我有一个简单的div.
<div id="date-dialog" title="Date?"> <label id="lblDate" for="txtDate"> Please Enter Your The Date: </label> <input type="text" id="txtDate" class="text ui-widget-content ui-corner-all" /> </div>
然后我有一些简单的代码把它变成一个对话框:
$('#date-dialog').dialog({ autoOpen: false,modal: true,resizable: false,buttons: { "Submit": function () { __doPostBack('DateButton',$('#txtDate').val()); },"Cancel": function () { $(this).dialog("close"); } } }); $('#txtDate').datepicker({ dateFormat: 'yy-mm-dd' });
我也试过添加这个,这不是有帮助的,实际上并不适用于模态对话框:
open: function (type,data) { $(this).parent().appendTo("form"); },
在Firefox中,我收到以下错误:
Error: TypeError: access to strict mode caller function is censored Source File: http://ajax.microsoft.com/ajax/4.0/2/MicrosoftAjaxWebForms.debug.js Line: 718
我不知道该怎么办来解决这个问题.我想要关闭严格的模式,但是我找不到任何有关如何做的信息.我几乎找不到任何有关该错误的信息.好像我在做什么应该很简单.
解决方法
这是一个老帖子,但这个问题今天仍然发生在我身上.
我不想使用按钮的点击,所以我试过一个setTimeout,它也可以.
我不想使用按钮的点击,所以我试过一个setTimeout,它也可以.
对于有这个问题的人,请尝试此解决方案:
setTimeout(function() { __doPostBack('DateButton',$('#txtDate').val()); },1);