如何更改此javascript以在加载时触发?

时间:2015-11-18 15:20:37

标签: javascript

尝试在页面加载时触发此操作但在页面加载时不显示任何内容。

http://jsfiddle.net/3GLFA/1/

<import namespace="urn:x:bar:1.0" schemaLocation="bar.xsd"/>

HTML

  $( document ).ready( function loadData() {
          var url = "https://docs.google.com/spreadsheet/pub?key=p_aHW5nOrj0VO2ZHTRRtqTQ&single=true&gid=0&range=A1&output=csv";
          xmlhttp = new XMLHttpRequest();
          xmlhttp.onreadystatechange = function () {
              if (xmlhttp.readyState == 4) {
                  document.getElementById("display").innerHTML = xmlhttp.responseText;
                  alert(xmlhttp.responseText);
              }
          };
          xmlhttp.open("GET", url, true);
          xmlhttp.send(null);
      }
 {
});

4 个答案:

答案 0 :(得分:1)

Jquery的.ready()方法将匿名函数作为参数。

只需删除您的功能名称即可。

$( document ).ready( function() {
  var url = "https://docs.google.com/spreadsheet/pub?key=p_aHW5nOrj0VO2ZHTRRtqTQ&single=true&gid=0&range=A1&output=csv";
  xmlhttp = new XMLHttpRequest();
  xmlhttp.onreadystatechange = function () {
    if (xmlhttp.readyState == 4) {
      document.getElementById("display").innerHTML = xmlhttp.responseText;
      alert(xmlhttp.responseText);
    }
  };
  xmlhttp.open("GET", url, true);
  xmlhttp.send(null);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="display"></div>

答案 1 :(得分:0)

$(document).ready更改为$(document).load

https://api.jquery.com/load-event/

答案 2 :(得分:0)

使用jQuery方法在DOMReady事件上触发代码。但内部代码不是jQuery。

我认为你的代码中没有jQuery。只需将其添加到您的HTML代码中:

<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>

答案 3 :(得分:0)

`but it's not displaying anything when the page loads.` 

我刚刚检查了网址的响应为空,这就是为什么没有显示的原因。检查这个小提琴,它在警告框中显示响应是什么。

http://jsfiddle.net/3GLFA/259/