对话框中的按钮不会回发
我有一个对话框,我用jQuery .dialog()
函数显示,这个对话框包含一个按钮,我想回发到另一个页面,但它不起作用。 我无法使用PostBackUrl
属性集或OnClick
(这永远不会触发)来发布。 但是,当我单击其中一个Calendar
日期时,我认为默认情况下会返回一个post,页面会回发到我在按钮PostBackUrl
属性中设置的URL! 我想使用asp:Calendar
,但在选择时禁用默认的回发行为,并且仅在用户选择按钮时才发布发布,但显然仍然可以在回发时使用Calendar
的选定日期。 这是.aspx
文件……
…和jQuery脚本……
function showDialog() { $('.divDialog').dialog({ modal: true, show: 'slide', title: 'Please Enter Information Below', width: 500 }); }
…这里是asp:按钮和asp:Calendar中的日期如何在浏览器中呈现….
28
….
编辑:按钮提交不起作用,无论我是否包括asp:日历控件。 但Calendar控件选择提交由于某种原因而起作用。
这种对话的问题在于,它们将您提供的内容移动到表单之外的某个位置。
举个例子: http : //jsfiddle.net/Qej8S/1/
我把内容放在keeper
里面
但是如果运行它,你会看到(以太颜色,以及浏览器的dom实用程序的以太)对话框正在将内容移动到守护者之外,并且在您的情况下将其移动到form
之外,这就是为什么不会激活,
为了解决方案,我想出了一些黑客。 创建对话框后,将其移回表单。 这是一个例子。 我在表单中放置了一个具有特定id的div:
然后在创建对话框后立即设置移动:
$('.divDialog').dialog({modal: true, show: 'slide', title: 'Please Enter Information Below', width: 200, create: function( event, ui ) { // this is the trick, I move it again inside the form, on a specific place. $("#MoveItHere").html($(this).parent()); } });
这是在线测试,如果你看到dom,那就有用了: http : //jsfiddle.net/Qej8S/2/