Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 当scriptmanager调用jquery对话框时,页面消失_C#_Asp.net_Jquery - Fatal编程技术网

C# 当scriptmanager调用jquery对话框时,页面消失

C# 当scriptmanager调用jquery对话框时,页面消失,c#,asp.net,jquery,C#,Asp.net,Jquery,我的Asp.net应用程序出现问题。 当我试图保存一些数据时,我会检查数据是否正确,否则我会调用带有错误消息的jquery对话框。但是当我的jquery对话框出现时,我的背景表单消失了。 我得到一个javascript错误:“html解析错误无法在关闭子元素之前修改父容器元素” 这是我在代码隐藏中的jquery对话框调用: string script = "openDialog('" + text + "', '" + title + "');"; ScriptManager.R

我的Asp.net应用程序出现问题。 当我试图保存一些数据时,我会检查数据是否正确,否则我会调用带有错误消息的jquery对话框。但是当我的jquery对话框出现时,我的背景表单消失了。 我得到一个javascript错误:“html解析错误无法在关闭子元素之前修改父容器元素”

这是我在代码隐藏中的jquery对话框调用:

    string script = "openDialog('" + text + "', '" + title + "');";
    ScriptManager.RegisterClientScriptBlock(this.Page, this.GetType(), "open", script, true);
这是我的母版页中的jquery对话框:

    function openDialog(text, title) {
    var $dialog = $('<div></div>')
    .html(text)
    .dialog({
        autoOpen: false,
        title: title,
        modal: true,
        height: 100,
        width: 220,
        buttons: {
            Ok: function() {
                $(this).dialog('close');
            }               
        },
        open: function(event, ui){
            $('body').css('overflow','hidden');
        }           
    });

    $dialog.dialog('open');
}
函数openDialog(文本、标题){ 变量$dialog=$('') .html(文本) .对话({ 自动打开:错误, 标题:标题,, 莫代尔:是的, 身高:100, 宽度:220, 按钮:{ 好的:函数(){ $(this.dialog('close'); } }, 打开:功能(事件、用户界面){ $('body').css('overflow','hidden'); } }); $dialog.dialog('open'); } 我有一些页面,其中有相同的代码,并且可以正常工作?

根据这一点,可能是因为您尝试添加的新div是在页面完成渲染之前添加的。试试这个:

string script = "jQuery(document).ready(function($) { openDialog('" + text + "', '" + title + "'); })";
根据这一点,可能是因为您尝试添加的新div是在页面完成呈现之前添加的。试试这个:

string script = "jQuery(document).ready(function($) { openDialog('" + text + "', '" + title + "'); })";

哇!我刚刚意识到对话框的标记在
标记中,将它移出,现在它可以工作了。似乎VS扩展了
,当我添加了一些东西并把我的东西也放进去时


点击这里
将其更改为:


点击这里

哇!我刚刚意识到对话框的标记在
标记中,将它移出,现在它可以工作了。似乎VS扩展了
,当我添加了一些东西并把我的东西也放进去时


点击这里
将其更改为:


点击这里