在ajax使用过程经常会遇到各种各样的问题,今天小编给大家分享ajax中的一些小问题,比较实用,感兴趣的朋友可以参考下
1.ajax跨域传递值是所需要的回传的类型为jsonp
$.ajax({
url: "http://.......",
type: 'GET',
dataType: 'JSONP',//js跨域传值
success: function (data) {
}
});
dataType
类型:String
预期服务器返回的数据类型。如果不指定,jQuery 将自动根据 HTTP 包 MIME 信息来智能判断,比如 XML MIME 类型就被识别为 XML。在 1.4 中,JSON 就会生成一个 JavaScript 对象,而 script 则会执行这个脚本。随后服务器端返回的数据会根据
这个值解析后,传递给回调函数。可用值:
"xml": 返回 XML 文档,可用 jQuery 处理。
"html": 返回纯文本 HTML 信息;包含的 script 标签会在插入 dom 时执行。
"script": 返回纯文本 JavaScript 代码。不会自动缓存结果。除非设置了 "cache" 参数。注意:在远程请求时(不在同一个域下),所有 POST 请求都将转为 GET 请求。(因为将使用 DOM 的 script标签来加载)
"json": 返回 JSON 数据 。
"jsonp": JSONP 格式。使用 JSONP 形式调用函数时,如 "myurl?callback=?" jQuery 将自动替换 ? 为正确的函数名,以执行回调函数。
2.ajax的一个demo样例 配合php获取值
$(function(){
var my_data="前台变量";
my_data=escape(my_data)+"";//编码,防止汉字乱码
$.ajax({
url: "ajax_php.php",
type: "POST",
data:{trans_data:my_data},
//dataType: "json",
error: function(){
alert('Error loading XML document');
},
success: function(data,status){//如果调用php成功
alert(unescape(data));//解码,显示汉字
}
});
});
php代码
$backValue=$_POST['trans_data']; echo $backValue."+后台返回";
3.php的json的数据转换处理
json_decode ( string $json [, bool $assoc ] ) ; //接受一个 JSON 格式的字符串并且把它转换为 PHP 变量
json_decode($data,true);
json 待解码的 json string 格式的字符串。 assoc 当该参数为 TRUE 时,将返回 array 而非 object 。
json_encode ( mixed $value [, int $options = 0 ] ) 返回 value 值的 JSON 形式
json_encode($a)
以上大概给大家分享了三个ajax小问题,非常常见,希望对大家有所帮助!
本文标题为:探讨Ajax中的一些小问题
基础教程推荐
- 第7天:CSS入门 2022-11-04
- 关于 css:WebKit (iPad) CSS3: 背景过渡闪烁 2022-09-21
- 深入浅析Jsonp解决ajax跨域问题 2022-12-28
- vue的 Mixins (混入) 2023-10-08
- 分页技术原理与实现之无刷新的Ajax分页技术(三) 2023-01-20
- 基于bootstrap的上传插件fileinput实现ajax异步上传功能(支持多文件上传预览拖拽) 2023-02-01
- 解决ajax的delete、put方法接收不到参数的问题方法 2023-02-23
- ECSHOP中实现ajax弹窗登录功能 2023-01-31
- ExtJS 3.x DateField menuListeners 显示/隐藏 2022-09-15
- Vue+WebSocket实现在线聊天 2023-10-08