问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501
你好,欢迎来到懂视!登录注册
当前位置: 首页 - 正文

ajax技术实现原理是什么?

发布网友 发布时间:2022-04-23 05:49

我来回答

3个回答

热心网友 时间:2022-04-19 06:01

Ajax和服务器端技术毫不相关;DOM模型是Ajax最本质的技术;在使用Ajax控件前理解它们的实现;学好JavaScript ;Ajax点缀:CSS 。

  观点一:Ajax和服务器端技术毫不相关

  严格的说,与传统web开发相比,Ajax是完完全全的客户端技术。由于很多控件封装了客户端和服务器端的通信过程,因此很多问题也因通信而起。事实上,不论何种Ajax技术,服务器端都是返回的一个纯文本流,再由客户端来处理这个文本。这段文本可以是xml格式,也可以是一个Html片段,也可以是一段JavaScript脚本,或者仅是一个字符串。服务器端仅仅是作为一个数据接口,客户端使用XMLHttpRequest对象来请求这个页面,服务器端在页面内写入结果文本,这个过程和普通的web开发没有任何区别。所不同的只是,客户端在异步获取结果后,不是直接显示在页面,而是由客户端的Javascript脚本处理后再显示在页面。至于各种控件所谓的能返回DataSet对象,Date对象,或者其他的数据类型,都是封装了这个处理过程的结果。

  观点二:DOM模型是Ajax最本质的技术

  之所以没有把XMLHttpRequest列为最本质的技术,因为本人觉得它实在是太简单了,它只是可以让浏览器在后台请求一个页面,并将其内容交给JavaScript处理。真正的核心应该是:DOM模型,即文档对象模型。在DOM模型里,Html标记都被认为是一个对象,例如:div对象,table对象等等。DOM模型就规定了这些对象所具有的属性、方法和事件。通过这些性质,可以对一个已经显示于浏览器的页面进行内容的修改,例如增加节点、修改节点位置,删除节点等等。而不仅仅是一个innerHTML属性这么简单,虽然这是一个很有用的属性。

  观点三:在使用Ajax控件前理解它们的实现

  使用Ajax控件的确可以提高效率,但如果你空中楼阁般使用控件,那就得不偿失了。从一个控件换到另外一个控件又会有一个漫长的学习曲线。所以应该从底层了解其,况且Ajax实在不是什么高深的技术。其实任何东西的最底层其实都是简单的,但如果封装了这些底层的东西,事情会变得复杂和难以理解。以Asp.net为例,它的定制特性可以使得只要在方法前加上[ajax method]类似这样的标志就可以称为一个异步方法,相信这使得Asp.net的Ajax开发显得更加“高效”或者是“神秘”,而更多的事情则被封装了。同样记住一条,任何对服务器端的请求仅仅是返回纯文本,我们不一定要依赖于封装好的处理过程,而完全可以自己来实现。

  观点四:学好JavaScript

  在大多数人看来,JavaScript总不是那么一种正规的语言,随便copy一段就碰巧能运行,学过c之类的人,一看也能看懂,而且在浏览器中常常有脚本错误提示,所以潜意识觉得总不能付之以大任。事实上,要学好Ajax,这就完全是一种错误的看法。javascript作为一种脚本语言,其语法的确不是很严格,但并不妨碍其完成诸多复杂的任务,没有JavaScript,就没有Ajax。所以本人强烈建议,学Ajax前,一定要好好研究一番JavaScript,一般来讲,如果能顺利看懂prototype框架的代码(如:prototype-1.3.1.js),你的JavaScript水平就基本过关了。同时对DOM模型也可以算有一个基本的了解。

  观点五:Ajax点缀:CSS

  用JavaScript控制CSS其实很简单,基本上每个DOM对象都有一个style对象,只要把css属性里的"-"去掉,并让随后的字母变为大写就可以作为属性使用了,例如:element.style.backgroundColor="#f00";在css是:选择符 {background-color:#f00}

热心网友 时间:2022-04-19 07:19

function cretateXMLHttpRequest()
{
if(window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else if(window.ActiveXObject)
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
}
function doStart(pages)//提交数据参数比如传页面参数
{
page=pages;
cretateXMLHttpRequest();
var url="page.aspx?page="+pages;
xmlhttp.open("GET",url,false);
xmlhttp.send();
return xmlhttp.responseText;
}var str=doStart(pages);--返回字符串就是把你要的数据在另一个页面读取出来在回传到你使用的页面,比如 你在入库的时候要知道到你输入的数量是否大于出库数量,就在你输入后通过AJAX 在另个页面把输入的数量和库存数量作比较再把比较后的结果返回到你使用的页面

热心网友 时间:2022-04-19 08:53

一句话 Request+Javascript+Xml Ajax的核心 所有的Ajax都是通过这个实现的 不管怎么封装
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com
打开手机淘宝自动弹出陌生淘口令,有什么解决办法么?恢复出厂设置、卸载... 新生儿惊厥有哪些西医治疗的方法? 利用SOLIDWORKS 生成高清二维/三维图片 | 操作视频 SOLIDWORKS工程图导出高清图片,轻松几步搞定! 单眼皮变三眼皮了该如何解决? ...哭肿了,本来双眼皮的 一个变成三眼皮 一个单眼皮 怎么办???怎么消肿... 有关于数控专业的本科大学吗 学数控编程的正规学校 全国开设数控技术专业有哪些院校 学数控哪些学校比较好 葡萄皮和籽能吃吗? 家庭如何食用葡萄籽怎么吃 葡萄酒过滤后的皮和籽能吃吗? thinkpad T430u win7 64位怎么样关触摸板 自己家酿葡萄酒剩下葡萄籽怎磨成粉,可以直接吃吗 葡萄酒里发效完的葡萄籽有用吗 电饭煲是有涂层好还是不锈钢内胆的好呢?? 怎样关闭Thinkpad E40 笔记本电脑触摸板(win7系统) 酿葡萄酒后的葡萄籽有用吗?如何吃才有用? 以前老式的电饭锅内胆有涂层吗 thinkpad x230如何关闭触摸板 做葡萄酒剩的葡萄籽可以吃么 thinkpad E470,win7的系统,请问如何关闭触摸屏? 自酿葡萄酒过滤出来的葡萄籽有用吗? ThinkPad W7怎么关闭触摸板 做葡萄酒剩下的葡萄籽可以用吗 win7怎样禁用触控板 win7禁用触控板方法 自酿葡萄酒后的葡萄籽蒸熟以后能吃吗? 葡萄籽怎么吃? 吃了有什么作用? 葡萄酒里的葡萄籽能吃么? 谢谢回答 电饭锅内胆的涂层有什么作用?用无涂层的不锈钢内胆可好? 葡萄酒的下脚料皮及籽研制成粉能吃吗 AJAX 的原理及实现方式?? Ajax 工作原理? 葡萄籽吃了有什么好处 Ajax是什么?工作原理是什么? ajax在jquery的底层是怎么实现的呢? 自制葡萄酒后的葡萄籽如何吃 ajax原理: 吃葡萄时把籽也吃了,这样对身体到底好不好呀? 电脑突然黑屏了,但灯亮着,为什么打不开了,是怎么回事? Ajax基于什么技术?其原理是什么? 每天晚上喝红酒还需要吃葡萄籽吗 手机为什么出现突然黑屏还闪屏就是打不开? 毛豆不能和什么同食 安装虚拟机时,提示“此处理器类型不支持该安装包”怎么办 手机突然黑屏,打不开怎么办? 电脑不能装示,处理器不支持装虚拟机,怎么解决? Ajax原理 芹菜猪肉蒸饺的做法,芹菜猪肉蒸饺怎么做好吃 电脑突然黑屏打不开了怎么回事
  • 焦点

最新推荐

猜你喜欢

热门推荐