首页 > web前端 > js教程 > 正文

解析jQuery Ajax操作(一)之 数据加载

零下一度
发布: 2017-06-17 17:51:56
原创
1337 人浏览过

Ajax 通俗来讲即不需要刷新页面即可从服务器或客户端上加载数据,当然这些数据的格式是多种多样的。

加载 HTML

我们通常使用加载 HTML 的方法来加载 HTML 片段,并插入到指定位置,假设当前页面为:

<p></p>
<button>load</button>
登录后复制

细说 jQuery Ajax操作篇(一) - 数据加载

同目录下的 test.html 文件内容为:

<span>test</span>
登录后复制

我们可以使用 load 方法来加载 HTML,将其绑定到按钮的点击事件上:

  $('button').click(function() {
    $('p').load('test.html');
  });
登录后复制

点击按钮后:

细说 jQuery Ajax操作篇(一) - 数据加载

加载 JSON

JSON<a href="//m.sbmmt.com/wiki/48.html" target="_blank">Javascript</a> Object Notation,直译过来即 Javascript 对象表示法,因此它能很方便地表示和传输数据,它规定键和值都必须包含在双引号内,且函数为非法 JSON 值。

{
    "name": "stephenlee", 
    "sex": "male"
}
登录后复制

将上述 JSON 数据保存在 test.json 文件内。我们可以使用 getJSON 方法加载 JSON 数据,同样将其绑定在按钮的点击事件上:

  $('button').click(function() {
    $.getJSON('test.json');
  });
登录后复制

由于 getJSON 方法是作为 jquery 的全局对象而定义的,因此这里需要使用 $ 来调用该方法。这里的 $ 指的是全局 jQuery 对象,而不是 $() 所指的个别 jQuery 对象。因此我们也称 getJSON 函数为全局函数
但我们会发现上述代码只是获取了 JSON 数据,但看不出任何效果,这里我们可以使用 getJSON 方法的第二参数作为回调函数来测试效果:

  $('button').click(function() {
    $.getJSON('test.json', function(data) {
      console.log(data);
      $.each(data, function(index, content) {
        console.log(content);
      })
    });
  });
登录后复制

点击按钮后,我们来看下 console 内的输出:

细说 jQuery Ajax操作篇(一) - 数据加载

这里的 each 函数的第一个参数可以接收数组或对象,第二个参数为值回调函数,将每次循环中数组或对象的当前索引和值做为参数。

加载 JS

有时候我们不希望在页面初次加载时就加载所有的 JS 文件,而是动态地根据需求来加载,假设当前目录下有一个 JS 文件,内容为一个简单的 alert

$(function() {
  alert('test');//
})
登录后复制

我们可以使用全局函数 getScript 来加载该文件,同样绑定到按钮的点击事件上:

  $('button').click(function() {
    $.getScript('test.js');
  });
登录后复制

点击按钮后,加载 test.js 文件,并成功触发 alert

加载 XML

XML 的加载操作与 JSON 类似,因为 XML 文档的作用也是与数据存储相关,在同目录下创建 text.xml 文件,内容为:

<person>
<name>stephenlee</name>
<sex>male</sex>
</person>
登录后复制

加载 XML 文档可以直接使用 get 方法,为什么看上去像一个默认方法,这个可以根据 AJAX 的全称看出端倪 – Asynchronous JavaScript And XML
同样将其绑定在按钮点击事件上:

  $('button').click(function() {
    $.get('test.xml', function(data) {
        console.log(data);
    });
  });
登录后复制

查看 console 结果为:

细说 jQuery Ajax操作篇(一) - 数据加载

这里需要注意,如果 XML 文档内的格式错误,虽然不会报错,但是将无法执行回调函数。

以上是解析jQuery Ajax操作(一)之 数据加载的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!