【问题标题】:Javascript Not Executing In Dynamically Loading Content (AHAH)Javascript 未在动态加载内容中执行 (AHAH)
【发布时间】:2010-09-15 15:59:48
【问题描述】:

当用户使用此代码单击链接时,我正在将内容动态加载到 div 中:

function ahah(url, target) {
  document.getElementById(target).innerHTML = 'Opening form...';
  if (window.XMLHttpRequest) {
    req = new XMLHttpRequest();
  } else if (window.ActiveXObject) {
    req = new ActiveXObject("Microsoft.XMLHTTP");
  }
  if (req != undefined) {
    req.onreadystatechange = function() {ahahDone(url, target);};
    req.open("GET", url, true);
    req.send("");
  }
}  

function ahahDone(url, target) {
  if (req.readyState == 4) { // only if req is "loaded"
    if (req.status == 200) { // only if "OK"
      document.getElementById(target).innerHTML = req.responseText;
    } else {
      document.getElementById(target).innerHTML=" AHAH Error:\n"+ req.status + "\n" +req.statusText;
    }
  }
}

function load(name, div) {
    ahah(name,div);
    return false;
}

这很好用,但是我无法让任何 javascript 在这个新内容中工作,例如 jquery 数据选择器,甚至只是一个 document.write hello world。代码中的js,只是不起作用。我已经直接在浏览器中加载了内容,效果很好。

我很茫然,任何想法都非常感谢!

【问题讨论】:

    标签: javascript ajax ahah


    【解决方案1】:

    如果您仍然使用 jquery,不妨尝试使用jquery.ajax()。 您可以在 <head> 中包含您需要的任何脚本,然后在您的 jquery ajax 调用的回调函数中调用您的 datepicker 或 w/e。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-03
      • 1970-01-01
      • 1970-01-01
      • 2014-10-13
      相关资源
      最近更新 更多