DreamPig 2019-06-29
// 第一步:创建ajax对象 //判断用户的浏览器类型,决定使用何种方式ajax对象 if (typeof ActiveXObject != "undefined") { var version = [ 'Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.3.0', 'Msxml2.XMLHTTP', 'Microsoft.XMLHTTP' ]; for (var i = 0; i <= version.length; i++) { try { var obj = new ActiveXObject(version[i]); if (typeof obj != "undefined") { break; } } catch(ex) { } } } else { var obj = new XMLHttpRequest(); } // 感知ajax状态,当ajax状态改变是会触发事件onreadystatechange obj.onreadystatechange = function(){ // 当前状态为4时,数据接收完毕 if (obj.readyState == 4 && obj.status == 200) { // 输出响应信息 alert(obj.responseText); } } // 设置GET传递的信息 var name = '小明'; // 处理中文乱码 name = encodeURIComponent(name); // 第二步:创建一个HTTP请求,并设置"请求地址"及异步请求方式 obj.open("get", "./test.php?fname=" + name + "&addr=beijing", true); // 第三步:发送请求 obj.send();
// 创建Ajax对象 //判断用户的浏览器类型,决定使用何种方式ajax对象 if (typeof ActiveXObject != "undefined") { var version = [ 'Msxml2.XMLHTTP.6.0', 'Msxml2.XMLHTTP.5.0', 'Msxml2.XMLHTTP.3.0', 'Msxml2.XMLHTTP', 'Microsoft.XMLHTTP' ]; for (var i = 0; i <= version.length; i++) { try { var obj = new ActiveXObject(version[i]); if (typeof obj != "undefined") { break; } } catch(ex) { } } } else { var obj = new XMLHttpRequest(); } // 感知Ajax状态,当Ajax状态改变时会触发事件onreadystatechange obj.onreadystatechange = function(){ // 当前状态为4时,数据接收完毕 if (obj.readyState == 4 && obj.status == 200) { // 输出响应信息 alert(obj.responseText); } } // 创建一个http请求,并设置“请求地址”及异步请求方式 obj.open("post", "./test.php"); // 设置HTTP头协议信息 obj.setRequestHeader("content-type", "application/x-www-form-urlencoded"); var info = "fname=" + "小明" + "&addr=beijing"; // 发送请求 obj.send(info);
自行下载并引入jquery: <script src="./jquery.min.js"></script>
// 1.直接请求 // $(function(){ // $.ajax("./test.php", { // data:{name:"tom",age:23}, // success:function(msg){ // alert(msg); // } // }); // }); // 2.配置setting参数请求 // $(function(){ // $.ajax({ // type:"GET", // url:"./test.php", // data:{name:"tom", age:23}, // success:function(msg){ // alert(msg); // } // }); // }); // 3.通过$.ajaxSetup()方法预先设置全局参数 // $(function(){ // // 预先设置全局参数 // $.ajaxSetup({ // type:"GET", // url:"./test.php", // data:{name:"tom",age:23}, // success:function(msg){ // alert(msg); // } // }); // // 执行ajax操作,使用全局函数 // $.ajax(); // }); // 4.利用$.get()方法请求 //只发送get请求 // $(function(){ // $.get('./test.php'); // }); // 发送get请求并接受返回结果 // $(function(){ // $.get("./test.php", function(msg){ // alert(msg); // }); // }); // 发送请求并传递数据 // $(function(){ // $.get("./test.php", {name:"tom",age:23}, function(msg){ // alert(msg); // }); // }); // 发送get请求并传递数据,接受返回结果,显示返回格式 // $(function(){ // $.get("./test.php", {name:"tom",age:23}, function(msg){ // alert(msg.name + " " + msg.age); // }, "json"); // }); // 使用$.getJSON()可以实现同样的功能 $.getJSON("./test.php", {name:"tom", age:23}, function(msg){ alert(msg.name + " " + msg.age); });
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>jquery-ajax发送post请求</title> </head> <body> <div>Ajax无刷新评论</div> <ul> <li>姓名:<input type="text" id="input_name" /></li> <li>评论:<input type="text" id="input_comment" /></li> </ul> <input type="button" value="发表评论" /> <table border="1"></table> <script src="./jquery.min.js"></script> <script> // 1.使用$.post()方法发送post请求,与$.get()用法相同 // $(function(){ // $.post("./comment.php", {name:'tom',age:23}, function(msg){ // alert(msg.name + " " + msg.age); // }, "json"); // }); // 2.使用全局ajax参数发送post请求 $(function(){ // 设置全局ajax $.ajaxSetup({ url:"./comment.php", type:"POST", dataType:"json", success:comment_add }); // 添加按钮单击事件 $(":button").click(comment_send); // 获得默认数据 $.ajax(); }); function comment_send(){ var name = $("#input_name").val(); var comment = $("#input_comment").val(); // 提交与获取数据 $.ajax({data:{name:name,comment:comment}}); } function comment_add(data){ html = "<tr><td>" + data.name + "</td><td>" + data.comment + "</td></tr>"; $("table").append(html); } </script> </body> </html>
注意:JSONP只支持get请求
dataType: "jsonp", jsonp: "callback",
例如
$.ajax({ type: "GET", url: "http://127.0.0.1/ajax2/serverjsonp.php?number=" + $("#keyword").val(), dataType: "jsonp", jsonp: "callback", success: function(data) { if (data.success) { $("#searchResult").html(data.msg); } else { $("#searchResult").html("出现错误:" + data.msg); } }, error: function(jqXHR){ alert("发生错误:" + jqXHR.status); }, });
$jsonp = $_GET["callback"]; echo $jsonp . '({"success":false,"msg":"参数错误"})'; //输出的字符串前面要拼接上jsonp
注意:其他浏览器都支持,但是IE必须得IE10以上
,只需要服务端接口加上以下头信息
header('Access-Control-Allow-Origin:*'); //允许所有访问 header("Access-Control-Allow-Origin", "http://my.domain.cn:8080"); //只允许特定域名访问 header('Access-Control-Allow-Methods:POST,GET'); //允许跨域请求的方法,可以做限定 header('Access-Control-Allow-Credentials:true'); //请求的时候是否带上cookie信息
xml示例
<?xml version="1.0" encoding="UTF-8" ?> <students> <student> <name>wendy</name> <age>35</age> <addr>Santa Fe</addr> </student> <student> <name>Yaphet</name> <age>32</age> <addr>Balchik</addr> </student> <student> <name>Isaiah</name> <age>35</age> <addr>Caldera</addr> </student> </students>
js示例
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <title>Ajax获取XML信息</title> <script> function f1(){ // 创建Ajax对象 var obj = new XMLHttpRequest(); // 感知Ajax状态 obj.onreadystatechange = function(){ if (obj.readyState == 4 && obj.status == 200) { // 获取XMLDocument对象 var xmlobj = obj.responseXML; // 获取xml对象的第一个元素结点students var students = xmlobj.childNodes[0]; // 获取元素结点students下所有的student的结点 var student = students.getElementsByTagName('student'); // 遍历student结点,并获得具体信息 var info = ""; for (var i = 0; i < student.length; i++) { var name = student[i].getElementsByTagName('name')[0].firstChild.nodeValue; var addr = student[i].getElementsByTagName('addr')[0].firstChild.nodeValue; var age = student[i].getElementsByTagName('age')[0].firstChild.nodeValue; // 拼接输出信息字符串 info += "姓名:" + name + ",地址:" + addr + ",年龄:" + age + "<br />"; } // 将字符串写入到id名称为result的div字符串中 document.getElementById('result').innerHTML = info; } } // 创建一个http请求,并设置“请求地址” obj.open("get", "./test.xml"); //发送请求 obj.send(); } </script> </head> <body> <h2>Ajax获取XML信息</h2> <div id="result"></div> <input type="button" onclick="f1();" value="触发" /> </body> </html>
结束数据方法的参数,该如何定义?-- 集合为自定义实体类中的结合属性,有几个实体类,改变下标就行了。<input id="add" type="button" value="新增visitor&quo
本文实例讲述了php+ ajax 实现的写入数据库操作。分享给大家供大家参考,具体如下:。<input class="tel" type="text" placeholder="请输入您的手机号码&q