MVC设计模式 (1)、html页面事件触发ajax()方法调用ajax.js发送请求至请求目标文件
2017-12-11 23:21
856 查看
XMLHttpRequest是AJAX的基础
所有的现代浏览器都支持XMLHttpRequest对象(IE5、IE6使用ActiveXObject)
XMLHttpRequest用于在后台与服务器交互数据,这意味着可以在不加载整个页面的情况下,对页面的某部分进行局部更新
所有的现代浏览器都支持XMLHttpRequest对象(IE5、IE6使用ActiveXObject)
XMLHttpRequest用于在后台与服务器交互数据,这意味着可以在不加载整个页面的情况下,对页面的某部分进行局部更新
//在静态页面调用ajax方法:
ajax({
type:'post',//ajax请求方式
url:'../index.php?C=admin&A=login',//发送请求的目标文件
data:{username:'song'},//发送的数据
success:function(obj){
//请求成功后执行的代码块
}
})
//以下是ajax.js文件的全部内容
创建一个ajax.js文件保存ajax方法:
function ajax(obj){
//1.创建XMLHttpRequest对象:
if(window.XMLHttpRequest){ var ajax = new XMLHttpRequest(); }else{ var ajax= new ActiveXObject("Microsoft.XMLHTTP"); }
//拼接请求数据
var data="";
for(var i in obj.data){
obj.data[i]=encodeURIComponent(obj.data[i]);//encodeURIComponent()可以把字符串作为URI组件进行编码
data+=i+"="+obj.data[i]+"&";
}
//判断请求方式:
if(obj.type.toUpperCase()=="GET"){
//拼接url参数
var url=obj.url+'?'+data;
//2.向服务器发送请求:
ajax.open(obj.type,obj.url,true);//url是服务器上的文件地址
ajax.send(data);
}else{
ajax.open(obj.type,obj.url,true);
ajax.setRequestHeader('Content-Type','application/x-www-form-urlencode');
ajax.send(data);
}
ajax.onreadystatechange=function(){
if(ajax.readState==4){//"4"ajax状态值,响应内容解析完成可以在客户端调用;每当readyState改变时,就会触发onreadystatechange事件
if(ajax.status>=200&&ajax.status<=300||ajax.status==304){//”200“请求状态码,请求成功;”304“所请求数据未修改
obj.success(ajax.responseText);//responseText获得字符串形式的响应数据
}
}
}
}
相关文章推荐
- html页面调用js文件里的函数报错onclick is not defined处理方法 (click)
- [转]html页面调用js文件里的函数报错onclick is not defined处理方法
- js中对arry数组的各种操作小结 瀑布流AJAX无刷新加载数据列表--当页面滚动到Id时再继续加载数据 web前端url传递值 js加密解密 HTML中让表单input等文本框为只读不可编辑的方法 js监听用户的键盘敲击事件,兼容各大主流浏览器 HTML特殊字符
- JS检测页面中哪个HTML标签触发点击事件的方法
- ajax实例 html页面中用js调用一个php文件
- html页面调用js文件里的函数报错onclick is not defined处理方法
- Jquery和Js如何在页面触发回车事件(或者其他html控件)
- Yii——使用CHtml::link()等方法时,设置htmlOptions属性可快速生成js代码和ajax请求
- C#后台程序与HTML页面中JS方法互调(功能类似于Ajax中的DWR)
- C#后台程序与HTML页面中JS方法互调(功能类似于Ajax中的DWR)
- 把js文件编译成dll供页面调用的方法
- 调用iframe两个子页面js的方法,分别获得数组,拆分数组,拼接一定规则的字符串,用ajax传到后台,
- js页面(页面上无服务端控件,且页面不刷新)实现请求一般处理程序下载文件方法
- FLEX文本htmlText调用js函数或者发送flex事件
- 通过([AjaxPro.AjaxMethod(AjaxPro.HttpSessionStateRequirement.Read)] )在前台html页面调用cs方法
- js,ajax调用action并取得返回值页面不刷新的方法
- html text事件和方法,及屏蔽页面js错误的方法
- 那些年朋友劝,该知道的ASP.NET -如何在HTML/后台,中调用另一个js文件中的方法
- 在页面里JS代码里onclick去调用后台文件中的一个方法
- 每日总结:每个 GROUP BY 表达式必须至少包含一个不是外部引用的列、加载页面时调用Js方法、调用Js文件中的方法