jQuery

jQuery 知识量:7 - 32 - 105

6.2 与服务器进行交互><

发送GET请求- 6.2.1 -

通过向服务器发送信息,告诉服务器根据信息进行不同的处理,然后返回对应消息,从而完成客户端与服务器端的交互是动态网站的显著特点,这也是AJAX的主要应用领域。要与服务器进行交互,可以通过GET或POST方式实现。

GET方式是最常见的链接的默认交互方式,其请求参数会直接显示在地址栏,因此便于收藏及再次访问,但是在AJAX应用中,请求参数并不会显示在地址栏,对用户来说它是透明的。$.get()方法就是利用GET方式进行交互的jQuery专用方法,“$.”表示它是一个全局方法,它接受三个参数:

  • URL地址

  • 要传递的参数对象

  • 匿名函数(用于处理返回的数据及后续动作)

HTML代码如下:

<a href="#" id="one">one</a>
<a href="#" id="two">two</a>
<p>Who is clicked?</p>

对应的JavaScript代码如下:

$(document).ready(function () {
    $('a').click(function () {
        var theID = $(this).prop('id');
        var setMessage = {id: theID};
        $.get("deal.php", setMessage, function (data) {
            $('p').text(data);
        });
        return false;
    });
});

这里使用PHP技术作为服务器端处理程序(deal.php):

$id = $_GET['id'];
if (!empty($id)) {
    echo "$id is clicked.";
} else {
    echo "Nobody is clicked";
}

以上代码中:

  • HTML部分设置了两个链接和一个字段元素,当点击链接时,字段元素会显示点击的是哪个链接。

  • JavaScript代码中,给两个链接绑定了单击事件,当链接被点击后,首先获取被点击的链接的“id”,然后设置参数对象“setMessage”,并将id信息放入其中。最后设置$.get()方法,URL地址设为要处理信息的PHP文件地址“deal.php”,参数对象为“setMessage”,处理函数(匿名函数)的动作是,当返回数据data后,将数据data写入字段元素p中。

  • PHP代码中,首先获取了传递的参数“id”,如果参数不为空,则打印是谁被点击;如果参数为空,则打印没有人被点击。

点击前:

1.JPG

点击后:

2.JPG

发送POST请求- 6.2.2 -

POST方式是另一种与服务器进行交互的方式,它的请求参数不会显示在地址栏(AJAX应用中,POST和GET方式都不会显示),可以传递的信息量也比GET方式更大,通常用于传递表单数据。

jQuery中,使用$.post()函数实现POST数据交互功能,与$.get()函数类似,它也接受三个参数:

  • URL地址

  • 要传递的参数对象

  • 匿名函数(用于处理返回的数据及后续动作)

HTML代码如下:

<form action="#">
    <input name="who" type="text"/>
    <input type="submit"/>
</form>

对应的JavaScript代码如下:

$(document).ready(function () {
    $('input[type=submit]').click(function () {
        var setMessage = {who: $('input[type=text]').val()};
        $.post("deal.php", setMessage, function (data) {
            $('form').after(data);
        });
        return false;
    });
});

这里使用PHP技术作为服务器端处理程序(deal.php):

$who = $_POST['who'];
if (!empty($who)) {
    echo "<p>hello $who!</p>";
}

以上代码中:

  • HTML部分设置了一个表单,其中有一个文本框和一个提交按钮,当表单提交后,在表单后面会显示被提交的内容。

  • JavaScript代码中,给提交按钮绑定了单击事件,当提交按钮被点击后,首先获取文本框的值,并将其作为参数填入参数对象“setMessage”中。最后设置$.post()方法,URL地址设为要处理信息的PHP文件地址“deal.php”,参数对象为“setMessage”,处理函数(匿名函数)的动作是,当返回数据data后,将数据data插入表单后面。

提交前:

123.JPG

提交后:

1234.JPG