本文目录一览:
AJAX 向PHP传递参数
能啊!给你个例子啊!
html
head
script type="text/javascript"
var xmlhttp;
function loadXMLDoc(url)
{
xmlhttp=null;
if (window.XMLHttpRequest)
{// all modern browsers
xmlhttp=new XMLHttpRequest();
}
else if (window.ActiveXObject)
{// for IE5, IE6
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
if (xmlhttp!=null)
{
xmlhttp.onreadystatechange=state_Change;
xmlhttp.open("GET",url,true);
xmlhttp.send(null);
}
else
{
alert("Your browser does not support XMLHTTP.");
}
}
function state_Change()
{
if (xmlhttp.readyState==4)
{// 4 = "loaded"
if (xmlhttp.status==200)
{// 200 = "OK"
document.getElementById('p1').innerHTML="This file was last modified on: " + xmlhttp.getResponseHeader('Last-Modified');
}
else
{
alert("Problem retrieving data:" + xmlhttp.statusText);
}
}
}
/script
/head
body
p id="p1"
The getResponseHeader() function returns a header from a resource.
Headers contain file information like length,
server-type, content-type, date-modified, etc./p
button onclick="loadXMLDoc('/example/ajax/test_xmlhttp.txt')"Get "Last-Modified"/button
/body
/html
如何在同一个PHP页面,通过ajax把值传给PHP变量?
举个例子:你想在用户点击时,把 apple 这个字符串,通过前端传给后端。
前端,用 jQuery 举例:
$('button').click(function () {
$.ajax({
url: '/xxx',
method: 'post',
dataType: 'json',
data: {fruit: 'apple'}
}).done(function (res) {
// 成功后的回调
}).fail(function (err) {
// 失败后的回调
});
});
后端 PHP 处理:
$fruit = $_POST['fruit']; // 获取从 ajax 传过来的 fruit 的值,这里是 apple。
如果你想在前端重新显示这个字符串 apple,那么你要用 PHP 把数据返回给页面,然后在上面 “// 成功后的回调” 里面,补充逻辑代码。
例如 PHP 把 apple 返回给前端:
return json_encode(array('fruit' = 'apple'));
前端回调处理:
// 成功后的回调
alert(res.fruit); // 弹框显示 “apple”
实际上,$_POST 能够获取所有从前端用 post 方式提交过来的数据,不管你是页面刷新方式,还是 ajax(jQuery 才叫 ajax,实际上它是 XMLHttpRequest,异步非阻塞的请求方式)
ajax 如何 传参数给php文件?
首先var btnfct1 = 1;不是这样定义的,
xmlHttp.send(btnfct1); //有参数要提交
这里btnfct1必须是对象,如{'btnfct1':1}
然后在php端$_POST['btnfct1']就能取到值了