比ajax更好技术,ajax 技术

AJAX即“AsynchronousJavascript AndXML”(异步JavaScript和XML),是指一种创建交互式网页应用的网页开发技术。

它的作用就是通过ajax引擎(JS的XMLHttpRequest对象)实现客户端和服务器的数据传递。

客户端通过ajax向服务器发送请求的方式有两种,get和post,服务器把输出的内容通过ajax引擎返回给客户端。服务器输出的内容可以是echo出的内容,可以是HTML标签的内容,还可以是xml的对象形式,然后以ajax的responseText属性返回给客户端文本,responseXML属性返回给客户端XML。这样避免了传统页面交互式加载所有页面的问题。

然后javascript的ajax使用很复杂,jquery进行了很好的封装。

例如:

1$.ajax({2 url:'http://qingjia.erp.sina.com.cn/index.php/vacation/wf/wfDoneAfter',3 data:{'et_uid': et_uid,'actionNickName':'完成'},4 dataType:'json',5 success:function(data){6 if(data.err == 0){7 $("#messageDivContent").text(html);8 $("#messageDiv").show();9 $("#redirectUrl").val('http://qingjia.erp.sina.com.cn/index.php/vacation/undeal');10 countDown(5,'http://qingjia.erp.sina.com.cn/index.php/vacation/undeal');11 }else{12alert(data.msg);13hideBlock();14}15},17 error:function(){18 alert('审批完成邮件失败!');19hideBlock();20}21 });

上述代码会向属性url的链接发起请求,并对得到的数据采用json格式录入。

另jquery还封装了更高级的ajax使用函数get(。。。)post(。。。)等,参 考。

另附json的一些知识:

JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式。类似前面看到的xml也可以用来传输数据,不过json使用{}和【】等,由于不要求xml闭合标签故能省流量,而且更适合js一点,看名字哈哈。百科里有一段比较二者的联系区别讲的很好,传送。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
类似MSN消息弹出框,AJAX技术 <script language="jscript"> // 获取最近的消息 function getRecentMsg() { // 消息显示<div>对象 var div_recentMsg = el("recentMsg"); // 根据url获取用户名 var username = document.location.search.split('=')[1]; // 获取最新消息的数据表 var dt = ch111.SendMsg.GetRecentMsg(username).value.Tables[0]; // 从后向前将消息内容显示 for (var i = dt.Rows.length - 1;i >= 0;i--) { // 一条消息对应与一个<span>对象 var oneMsg = document.createElement("span"); // 消息发送者与发送对象 var strLine1 = dt.Rows[i].sender + "说: (" + dt.Rows[i].sendtime + ")"; strLine1 = DealBrackets(strLine1); // 消息内容 var strLine2 = dt.Rows[i].content; strLine2 = DealBrackets(strLine2); // 显示样式 oneMsg.innerHTML = "<pre>" + strLine1 + "<br>  " + strLine2 + "</pre>"; oneMsg.style.padding = "2px 2px 2px 2px"; oneMsg.style.color = (dt.Rows[i].sender == username) ? "blue" : "red"; oneMsg.style.fontFamily = "'Courier New' , 宋体"; // 附加到DOM div_recentMsg.appendChild(oneMsg); } } // 发送消息 function sendMessage() { // 消息内容输入框 var ta_content = el("content"); // 如果输入内容不为空 if (ta_content.value.length > 0) { // 消息显示区域 var div_recentMsg = el("recentMsg"); // 用户名 var username = document.location.search.split('=')[1]; // 发送消息 ch111.SendMsg.SendMessage(username, ta_content.value); // 清空输入框 ta_content.value = ""; // 页面跟随输入框滚动 ta_content.scrollIntoView(false); // 获取新消息 getNewMessage(); } } // 获取最新的消息 function getNewMessage() { // 用户名 var username = document.location.search.split('=')[1]; // 消息显示区域 var div_recentMsg = el("recentMsg"); // 获取最新消息的数据表 var dt = ch111.SendMsg.GetNewMessage().value.Tables[0]; for (var i = 0;i < dt.Rows.length;i++) { // 一条消息对应与一个<span>对象 var oneMsg = document.createElement("span"); // 消息发送者与发送对象 var strLine1 = dt.Rows[i].sender + "说: (" + dt.Rows[i].sendtime + ")"; strLine1 = DealBrackets(strLine1); // 消息内容 var strLine2 = dt.Rows[i].content; strLine2 = DealBrackets(strLine2); // 显示样式 oneMsg.innerHTML = "<pre>" + strLine1 + "<br>  " + strLine2 + "</pre>"; oneMsg.style.padding = "2px 2px 2px 2px"; oneMsg.style.color = (dt.Rows[i].sender == username) ? "blue" : "red"; oneMsg.style.fontFamily = "'Courier New' , 宋体"; // 附加到DOM div_recentMsg.appendChild(oneMsg); } } // 主进程循环 function mainLoop() { // 获取新消息 getNewMessage(); // 每隔1秒检查一次 setTimeout("mainLoop()", 1000); } // 显示最近的消息 getRecentMsg(); // 定时更新消息列表 mainLoop(); </script>

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值