ASP.NET中使用JQuery UI Dialog致表单无法提交的解决方法

在ASP.NET中使用JQuery UI Dialog实现表单提交功能,发现出现下面问题:

1. 点击提交按钮无任何反应。

在G.cn中搜索之后发现:

jQuery UI Dialog控件初始化时动态生成的HTML元素被添加到页面的尾部、form元素的后面,而原始的Dialog模板部分(其内包含表单元素)也被移到了 动态生成的HTML元素内。也就是说,原先在form内的表单在Dialog初始化后就被移到form外了,这就导致了Dialog模板内表单全部失效。

解决方法:

方法一:
在JQuery UI的“open”事件处理中将Dialog控件动态生成的HTML元素移到form元素内。
在Dialog初始化时加入黑体代码:
$(
#dialog).dialog({
    open: 
function() {
               $(body > div[role=dialog]).appendTo(”/html/body/form[0]“);
    }
});

方法二:
在Open Dialog的JS函数中加入黑体代码:
function openDialog() {
        $(”#dialog”).parent().appendTo(”/html/body/form[0]“);
        $(”#dialog”).dialog(”open”);
        $(”#tbContent”).focus();  //内容框获取焦点,便于用户打开对话框即可录入信息
 }

以上代码均测试通过。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章