火狐浏览器为什么没法发送这个jquery ajax请求
$(".ui-icon-close",window.parent.document).click(function(){vartype=$(this).prev().te...
$(".ui-icon-close",window.parent.document).click(function(){
var type=$(this).prev().text();
$.post("${pageContext.request.contextPath}/information/information!closeTab.do","type="+type,function(data){
});
});
这是页面代码
后台方法完全正常 在ie chrome下都能正确运行
在火狐下始终无法发送请求 也就是后台代码始终不执行 我在firebug下看到请求一直不发出 在那里转菊花
始终是在这里转菊花 展开
var type=$(this).prev().text();
$.post("${pageContext.request.contextPath}/information/information!closeTab.do","type="+type,function(data){
});
});
这是页面代码
后台方法完全正常 在ie chrome下都能正确运行
在火狐下始终无法发送请求 也就是后台代码始终不执行 我在firebug下看到请求一直不发出 在那里转菊花
始终是在这里转菊花 展开
2个回答
展开全部
根据官方的说明http://api.jquery.com/jQuery.ajax/,你没有定义jsonpCallback所致。ie和chrome对此不敏感,所以可以通过,而firefox不可以。
把
$.post(……);
改成
jQuery.ajax({
url: "${pageContext.request.contextPath}/information/information!closeTab.do",
data: {"title":"" ,'callback':'?'},
dataType: "json",
async: false,
success: function(data) { …… }
});
json返回的时候需要回调函数,并且在服务器端也要讲callback和json数据组合成一个字符串才可以
$callback = $_GET['callback'];
$message = $callback.'('.json_encode($result).')';
把
$.post(……);
改成
jQuery.ajax({
url: "${pageContext.request.contextPath}/information/information!closeTab.do",
data: {"title":"" ,'callback':'?'},
dataType: "json",
async: false,
success: function(data) { …… }
});
json返回的时候需要回调函数,并且在服务器端也要讲callback和json数据组合成一个字符串才可以
$callback = $_GET['callback'];
$message = $callback.'('.json_encode($result).')';
追问
$callback = $_GET['callback'];
$message = $callback.'('.json_encode($result).')';
这段用在哪儿啊
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询