2011-08-16 160 views
0

一个对话框,我想显示动态生成包含HTML对话框:显示与动态加载HTML内容

$.ajax({ 
     type: "get", 
     url: "http://localhost/example/test", 
     dataType: "html", 
     success: function (content) { 
      $(content).dialog(); 
     } 
    }); 

content基本上是一个完整的HTML与网站标题和正文。如果我将$(content).dialog()更改为alert(content),则生成的HTML会正确显示。但content.dialog()抛出在Firefox 5以下异常:

a.style is undefined 
Source: http://localhost/TrackerWebStable/Scripts/jquery-1.4.4.min.js 
Line: 150 

我也与IE8在那里我得到类似的错误进行了测试。

我该如何解决这个问题?

回答

1

content将包含整个html标记。我相信你想在对话中展示它的一部分。尝试从整个html中找到所需的元素,并在对话框中显示它。

或者,您只能从"http://localhost/example/test发送所需的标记,以便您不必在成功处理程序中找到任何内容,只需在对话框中显示即可。

$.ajax({ 
     type: "get", 
     url: "http://localhost/example/test", 
     dataType: "html", 
     success: function (content) { 
      $(content).find("requiredElement").dialog(); 
     } 
    }); 
+0

我宁愿将整个标记显示为对话框。这不可能吗? – xsl

+0

我解决了它没有完整的HTML页面,所以问题不再相关。 – xsl