资讯专栏INFORMATION COLUMN

细说 jQuery Ajax操作篇(二) - 数据传递

paulli3 / 2728人阅读

摘要:在前一篇介绍的数据加载中的例子都是从静态的文件中取得数据,而更大的价值在于与后端服务器进行数据传递,动态地请求和发送数据。首先用方式请求数据方式点击标签后,当前页面为数据请求成功。

在前一篇介绍 jQuery Ajax 的数据加载中的例子都是从静态的文件中取得数据,而 Ajax 更大的价值在于与后端服务器进行数据传递,动态地请求和发送数据。

请求数据

我们可以使用 GET、POST 两种方式向后端请求数据,这里以 PHP 为例,假设有测试页面 age.php,用于返回年龄信息,内容为:

if(isset($_REQUEST["name"]) && $_REQUEST["name"] == "stephen") {
    echo "23";
}

当前页面内容为:

stephen age :

我们希望点击 a 标签后,在不刷新页面的前提下获取年龄信息。首先用 GET 方式请求数据:

GET 方式
  $("a").click(function(e) {
    e.preventDefault();//
    var url = $(this).attr("href"),
      name = $(this).text(),
      requestData = {"name": name};

    $.get(url, requestData, function(data) {
      $("#sex").html(data);
    });
  });

点击 a 标签后,当前页面为:

数据请求成功。我们再用 POST 方式测试下:

POST 方式
  $("a").click(function(e) {
    e.preventDefault();//
    var url = $(this).attr("href"),
      name = $(this).text(),
      requestData = {"name": name};

    $.post(url, requestData, function(data) {
      $("#sex").html(data);
    });
  });

代码几乎一样,只是由 get 方法变为了 post 方法。
这里我们其实还可以用 load 方法简化代码:

  $("a").click(function(e) {
    e.preventDefault();
    var url = $(this).attr("href"),
      name = $(this).text(),
      requestData = {"name": name};

    $("#sex").load(url, requestData);
  });
发送数据

除了可以使用 Ajax 技术从后端获取数据,还可以向后端发送数据,常见的就是异步提交表单的情景,这里以用户验证为例:

username: password:

假设当用户名为 stephenlee,密码为 123456 时验证通过,否则失败,测试页面 validate.php 为:

if($_REQUEST["username"] == "stephenlee" && $_REQUEST["password"] == "123456") {
    echo "pass";
} else {
    echo "fail";
}

使用 get 方式发送数据到后端验证:

  $("form").submit(function(e) {
    e.preventDefault();//
    var url = $(this).attr("action"), 
      username = $("input[name="username"]").val(),
      password = $("input[name="password"]").val(),
      requestData = {"username": username, "password": password};

    $.get(url, requestData, function(result) {
      alert(result);
    });
  });

输入错误用户名 lucas 后,结果为:

输入正确用户名 stephenlee 后,结果为:

使用 post 方式发送数据思路相同,就不再赘述了。

参考

http://book.douban.com/subject/24669823/

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/87553.html

相关文章

  • 细说 jQuery Ajax操作(三) - 过程处理

    摘要:观察函数和函数可以用来作为观察函数,我们可以使用观察函数的回调函数来做相应的处理。当请求开始且尚未进行其他传输时,会触发的回调函数。当最后一次活动请求终止时,则会执行通过注册的回调函数。 对于 jQuery 通过 Ajax 方式传递数据时,我们还可以在过程中进行一定的处理,以便达到我们的需求。 观察函数 ajaxStart 和 ajaxStop 函数可以用来作为观察函数,我们可以使...

    Imfan 评论0 收藏0
  • 细说 jQuery Ajax操作(一) - 数据加载

    摘要:同样将其绑定在按钮点击事件上查看结果为这里需要注意,如果文档内的格式错误,虽然不会报错,但是将无法执行回调函数。 Ajax 通俗来讲即不需要刷新页面即可从服务器或客户端上加载数据,当然这些数据的格式是多种多样的。 加载 HTML 我们通常使用加载 HTML 的方法来加载 HTML 片段,并插入到指定位置,假设当前页面为: load showImg(http://segmen...

    paulli3 评论0 收藏0
  • 细说 jQuery DOM操作) - DOM 树操作

    摘要:此时,点击新建的将会触发。设置元素内容的方法则使用上述两种方法,将新内容作为参数传递即可,例如修改上例中的文本内容方法同理。 我们知道通过 $() 函数可以访问文档中的元素,并返回一个 jQuery 对象,并且通过一系列方法,我们可以修改元素的样式和内容,实际上,我们还可以通过该函数做更多的事情,例如添加、删除、复制等操作来改变 DOM 树的结构。 创建元素 我们可以通过 $() ...

    Anchorer 评论0 收藏0
  • 细说 jQuery 元素) - 选择符

    摘要:为了更方便对元素操作,提供了完整的选择符体系,可以分为选择符属性选择符以及自定选择符。选择符几乎支持到规范中的所有选择符。介绍个比较有用的自定义选择符选择符。 为了更方便对 DOM 元素操作,jQuery 提供了完整的选择符体系,可以分为 CSS 选择符、属性选择符以及自定选择符。 CSS 选择符 jQuery 几乎支持 CSS1 到 CSS3 规范中的所有选择符。举例如下: ...

    104828720 评论0 收藏0
  • 细说 jQuery 插件(一) - 添加全局函数

    摘要:添加全局函数所谓全局函数就是对象的方法,例如在一篇中介绍的等方法。 当我们希望将一些功能性代码重复使用,可以将其打包成一个 jQuery 插件来使用。 使用 $ 别名 首先我们在编写插件时必须保证 jQuery 库已经载入,但是我们不能保证 $ 一定可用,为了使用 $ 别名,我们可以利用 IIFE (Immediately Invoked Function Expression),...

    joyvw 评论0 收藏0

发表评论

0条评论

最新活动
阅读需要支付1元查看
<