iteye_18539
2009-12-14 11:20
浏览 247
已采纳

jquery.getJson方法的问题

各位好:
我在程序中用到了jquery.getJson方法,但是不知道为什么总是不能执行回调函数(服务器端的代码已经执行),代码如下
客户端代码如下:
<%@ page language="java" import="java.util.*;" pageEncoding="gb2312"%>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>测试跨域请求数据</title>
<script type="text/javascript" src="jquery/jquery.js"></script>
<script type="text/javascript">
$.getJSON("http://www.sheng.com:8080/test/server.jsp?jsoncallback=?",
function(data){
alert("ttt");
});
</script>
</head>

<body>
</body>
</html>

服务器端server.jsp代码如下:
<%@ page language="java" contentType="text/html; charset=gb2312"
pageEncoding="gb2312"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>Insert title here</title>
</head>
<body>
<%--
Created by IntelliJ IDEA.
User: Christen
Date: 2009-3-24
Time: 17:43:29
Focus: Java Groovy Grails / Flash Flex / JavaScript jQuery MooTools ExtJS / PHP / Ruby Rails / Python / Perl
--%>
<%
System.out.println("server.jsp");
String callback = request.getParameter("jsoncallback");
if(callback != null)
{
out.println(callback + "({name:'sheng',sex:'男'})");
}
else
{
out.println("({name:'代平',sex:'女'})");
}
%>
</body>
</html>


在执行的过程中,浏览器会显示如下图表,不知道是不是跟浏览器的设置有关系,请大家指教。多谢了
问题补充
查看了http://www.iteye.com/topic/299851这篇文章,删除了server.jsp里面的html标签就可以执行到callback函数了。但是我还是不明白这是为什么,希望哪位兄弟指教,谢谢
问题补充
<%@ page language="java" contentType="text/html; charset=gb2312"
pageEncoding="gb2312"%>
<%
System.out.println("server.jsp");
String callback = request.getParameter("jsoncallback");
if (callback != null) {
out.println(callback + "({name:'sheng',sex:'男'})");
} else {
out.println("({name:'tt',sex:'kk'})");
}
%>

  • 写回答
  • 好问题 提建议
  • 追加酬金
  • 关注问题
  • 邀请回答

1条回答 默认 最新

相关推荐 更多相似问题