举个例子:你想在用户点击时,把 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({type: "",url: "",data: "", dataType: "json",success: function (data) {
//这里处理返回的结果
//type为数据提交的方式post或者get
//data表示要提交的数据 方式为 {name1:value1,name2:value2.....等等}
//dataType表示数据处理后返回的数据类型 一般返回json的数据类型 使用$.each进行循环操作
//success表示数据请求成功后执行的动作
}});
var formData = new FormData();
formData.append('goodsNum', 1);
$.ajax({
url: 'index.php',/*获取表单提交路径*/
type: 'post',/*提交方式*/
data:formData,/*提交数据*/
processData: false,
contentType: false,
success: function (msg) {
/*执行成功后*/
console.log(msg);
},
error : function(jqXHR) {
/* 执行失败后*/
console.log(JSON.stringify(jqXHR));
}
},'json');
跟正常接收数据 是一样的 ,
$.ajax({
type: 'POST',
url: url
,
data: data
,
success: success
,
dataType: dataType
});
这里 ajax 使用 POST 类型提交,php 就用 $_POST 接收。
其实就是发送一个网络请求,服务端输出的内容就是响应的内容,如jQuery
$.ajax(
{
url: '', // 请求URL
data: '', // 请求时携带的参数
type: '', // 请求方式, GET/POST
dataType: '',// 响应数据格式, text/json
success: r = {
// 请求成功时回调函数,参数 r 为服务端响应的内容
console.log(r); // 就是你说的后台数据
},
error: () = {
console.error('fail'); // 请求失败
}
}
)
// 服务端响应内容
$data = []; // 从数据库中获取的数据
echo json_encode($data); // 响应客户端, 数据格式为 JSON