php根据ajax传值跳转页面_php传参方式1--ajax

1、ajax一般用于当前页面,不实现页面跳转

2、ajax端:怎样异步得监听服务器端的状态呢?通过onreadystatechange监听readystate属性

request.onreadystatechange = function() {

if (request.readyState===4) {

0:请求未初始化(还没有调用 open())。

1:请求已经建立,但是还没有发送(还没有调用 send())。

2:请求已发送,正在处理中(通常现在可以从响应中获取内容头)。

3:请求在处理中;通常响应中已有部分数据可用了,但是服务器还没有完成响应的生成。

4:响应已完成;您可以获取并使用服务器的响应了。

所以一般都是判断等于4之后进行相应的操作。

但注意这个和request的status是不一样的

比如readystate=4但是status=404表示响应完成但是响应的内容是没有找到文件

所以一般做法是==200的时候返回内容,其他就显示发声错误即可。

注意在post请求中要设置url 成encode,及url解码,否则不能正确给出结果

request.setRequestHeader("Content-type","application/x-www-form-urlencoded");

但是url解码会有一个问题,由于进行urlencoded的时候加号会自动解码成空格,&会被解码成变量连接符,所以如果出现这些字符必须要进行转码

(在做canvas上传图片的url的时候遇到了这个问题)

Pic = Pic.replace(/\+/g, "%2B");

Pic = Pic.replace(/\&/g, "%26");

3、服务器通过echo来返回给传递ajax的界面。

(提示:zendstudio内置的浏览器对于ajax的页面总是会显示上一次的页面,所以改成在外置浏览器里运行

preference-general-web browser里面设置。)

如果只返回一行简单的,可以不用jason,jason可以更方便返回不同键值的数据。

1

2

3

4

5

Demo

6

7 body, input, select, button, h1{

8 font-size:28px;

9 line-height:1.7;

10 }

11

12

13

14

15

16

员工查询

17

18 请输入员工编号:

19

20 查询

21

22

23

员工新建

24 请输入员工姓名:

25

26 请输入员工编号:

27

28 请选择员工性别:

29

30 女

31 男

32

33 请输入员工职位:

34

35 保存

36

37

38

39 document.getElementById("search").οnclick= function() {40 varrequest= newXMLHttpRequest();41 request.open("GET","serverjson.php?number=" +document.getElementById("keyword").value);42 request.send();43 request.onreadystatechange= function() {44 if(request.readyState===4) {45 if(request.status===2

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值