0

我正在尝试实现一个拖放模块我在服务器 Display.php、t2.php 和 update.php 上上传了 3 个文件:

t2.php 与http://www.script.iblogger.org/相同,拖放在这里工作得很好,但是当我在 display.php 中加载 t2.php 的内容时(http://www.script. iblogger.org/display.php)通过 ajax 调用 document.ready 函数不会触发,任何帮助将不胜感激。先感谢您! 编辑:我应该如何修改这个?

display.php 中的 AJAX 调用函数:

    function showSubjects(str)
    {
    if (str=="")
      {
      document.getElementById("teacher-row").innerHTML="";
      return;
      } 
    if (window.XMLHttpRequest)
      {
      xmlhttp=new XMLHttpRequest();
      }
    else
      {
      xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
      }
    xmlhttp.onreadystatechange=function()
      {
      if (xmlhttp.readyState==4 && xmlhttp.status==200)
        {
        document.getElementById("teacher-row").innerHTML=xmlhttp.responseText;
        }
      }
    xmlhttp.open("GET","t2.php?s="+str,true);
    xmlhttp.send();

    }

t2.php 中的文档就绪功能:(因为文档就绪不能通过 ajax 调用工作)

    $(document).ready(function(){...});
4

2 回答 2

1

ajax 加载内容时不会触发document.readysuccess ,您需要使用,completedone事件。您可以在此处阅读有关 ajax 事件的更多信息。

文档就绪

JavaScript 提供了在页面渲染时执行代码的加载事件,直到所有资源(例如图像)都被完全接收后才会触发该事件。在大多数情况下,只要完全构建了 DOM 层次结构,就可以运行脚本。传递给 .ready() 的处理程序保证在 DOM 准备好后执行,因此这通常是附加所有其他事件处理程序和运行其他 jQuery 代码的最佳位置。当使用依赖 CSS 样式属性值的脚本时,在引用脚本之前引用外部样式表或嵌入样式元素非常重要,参考.

于 2013-07-27T07:38:01.343 回答
0

这个问题是小错误,document.ready 在页面加载时被触发。

所以解决这个问题在ajax请求响应返回时执行你的操作:

成功:功能(响应){您的代码在这里...}

于 2013-07-27T07:46:08.243 回答