3dmax样条线这么多乱线是怎么回事,怎么弄掉

请问MVC框架如何配合ajax来进行网页的异步刷新
这里使用的smarty模板引擎在每一次数据更新时必须要刷新整个页面,如果使用ajax进行页面的异步刷新,如何编写代码?
写下你的评论...
Copyright (C)
All Rights Reserved | 京ICP备 号-2AJAX的原理―如何做到异步和局部刷新【实现代码】
Overriew: onReadyStateChange被回调函数赋值,则能实现异步调用,回调函数直接操作DOM,则能实现局部刷新。那么XMLHttpRequest的onReadyStateChange如何知道服务ready了呢?状态如何change了呢(观察者模式)?则是通过客户端对服务的状态询问(定期轮询)所实现的。
1.& XMLHttpRequest 负责与服务器端的通讯,其内部有很多重要的属性:readyStatus=4,status=200等等。当XMLHttpRequest的整体状态并且保证它已经完成(readyStatus=4),即数据已经发送完毕。然后根据服务器的设定询问(类似于客户端会轮询服务器的返回状态,仍然是http短连接,并非长连接的服务器端push)请求状态,如果一切已经就绪(status=200),那么就执行需要的操作。
操作一般就是直接操作DOM,所以AJAX能做到所谓的“无刷新”用户体验。
document.getElementById("user1").innerHTML = "数据正在加载...";
if (xmlhttp.status == 200) {
document.write(xmlhttp.responseText);
2.& 那么在AJAX客户端如何做到的异步呢?实际上就是Javascript的回调函数起的作用
提供一个回调JavaScript函数,一旦服务器响应可用,该函数就被执行
业务函数:
function castVote(rank) {
var url = "/ajax-demo/static-article-ranking.html";
var callback = processAjaxR
executeXhr(callback, url);
需要异步通讯的函数:
function executeXhr(callback, url) {
// branch for native XMLHttpRequest object
if (window.XMLHttpRequest) {
req = new XMLHttpRequest();
req.onreadystatechange =
req.open("GET", url, true);
req.send()(null);
} // branch for IE/Windows ActiveX version
else if (window.ActiveXObject) {
req = new ActiveXObject("Microsoft.XMLHTTP");
if (req) {
req.onreadystatechange =
req.open("GET", url, true);
req.send()();
req.onreadystatechange = callback
req.open("GET", url, true)
第一行定义了JavaScript回调函数,一旦响应就绪它就自动执行,而req.open()方法中所指定的“true”标志说明想要异步执行该请求。
一旦服务器处理完XmlHttpRequest并返回给浏览器,使用req.onreadystatechange指派所设置的回调方法将被自动调用。
回调函数:
function processAjaxResponse() {
if (req.readyState == 4) {
// only if "OK"
if (req.status == 200) {
document.getElementById("user1").innerHTML = req.responseT
alert("There was a problem retrieving the XML data:
" + req.statusText);
以上这篇AJAX的原理―如何做到异步和局部刷新【实现代码】就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持网管之家。
顶一下(0) 踩一下(0)
热门标签:推荐这篇日记的豆列
······2013年10月 Java大版内专家分月排行榜第二2013年3月 Java大版内专家分月排行榜第二2013年2月 Java大版内专家分月排行榜第二
2013年7月 Java大版内专家分月排行榜第三2013年5月 Java大版内专家分月排行榜第三2013年4月 Java大版内专家分月排行榜第三
本帖子已过去太久远了,不再提供回复功能。ajax异步刷新与iframe刷新对比
在ajax没出来之前,一直是用iframe实现的无刷新请求。
主要的原理是:
使用js创建一个隐藏的iframe
把要提交的表单的target属性指向1中生成的iframe
在请求的页面中回调父页面的方法
这样就实现了一个简单的“异步提交”
看起来和ajax一样的效果,那为什么还要有ajax,我们来比较下:(以下把ajax技术称为XHR,iframe实现的称为iframe)
XHR 和 iframe的区别主要在4个地方:
从上面说的原理很容易就能看出利用iframe实现的异步请求,其实也还是同步的,也就是说后台在处理这个请求的时候,前台仍然是什么都不能做的;而XHR是真正实现了异步请求,它能发起多个异步请求。
键盘上上的回退键的主要功能是退回到上一个历史页面。
利用iframe实现的异步请求,按回退键是可以回到上个历史页面的;而XHR不行,因为它根本没有留下任何历史的痕迹。
所以现在大多数的搜索引擎是没有利用ajax实现搜索的。
利用iframe实现的异步请求,请求的地址是可以是本应用外的服务;而XHR只能请求本应用的服务。
注意:只要是不用域名的都会被拒绝访问,无论是子域名访问父域名,还是父域名访问子域名
请求的状态
&想要在请求返回的同时得到请求的状态(status),iframe实现的异步请求是做不到的;而XHR可以轻而易举的做到。
所以让我们来总结下到底什么时候该选择哪种异步请求:
iframe实现的异步请求
除了这次的请求,没有其他并发的请求
请求的响应时间很短暂,否则用户体验会很差
跨域的请求
能返回历史页面
XHR实现的异步请求
并发的异步请求
根据准确的请求状态做事件响应 ......
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

我要回帖

更多关于 3dmax线框显示 的文章

 

随机推荐