jquery模态窗口加载帧

时间:2012-01-27 15:56:49

标签: jquery

我正在通过以下方式加载模态窗口:

 $.ajax({
      type: "GET",
      url: "/myFile.cfm?cmid=<cfoutput>#someid#</cfoutput>",
      dataType: "html",
      success: function (h) {
          $("div#salesNotes", window.parent.document).html(h);
      }
 });

在myFile.cfm中,我有一堆jquery语法控制按钮点击等。当我将此文件直接加载到浏览器中时,一切正常。没有错误。当我如上所述加载此文件时,这些控件都不起作用。我尝试附加load()并将所有函数放在那里,但这也不起作用。当我尝试提醒按钮ID时,我得到了未定义。怎么办?

2 个答案:

答案 0 :(得分:0)

想通了。所有控件必须采用以下格式:

$.ajax({
  type: "GET",
  url: "/myFile.cfm?cmid=<cfoutput>#someid#</cfoutput>",
  dataType: "html",
  success: function (h) {
      $("div#salesNotes", window.parent.document).html(h);
        $("#myButton", window.parent.document).click(function(){ ... });
  }

});

答案 1 :(得分:0)

如果问题是代码没有运行,那么它与数据放在页面上的方式有关。

浏览器通常不运行简单粘贴到页面上的代码,我通常讨厌eval,但最简单的方法是获取原始JS代码并在到达页面时对其进行评估。

  success: function (h) {
      eval(h);
  }

如果外部内容是html和javascript的混合,那么最好使用write代替:

document.write(h);

还要确保检查内部代码是否正确执行事件方法。