请求发送到服务器了,并且服务器可以成功处理请求,但是不知道为什么返回的响应确实null
服务器代码:public String searchCourse()throws Exception{
course = coursemanage.searchCourse(course.getCourseNo());
jsonobject = new JSONObject();
jsonobject.put("courses",new JSONObject(course));
result = jsonobject.toString();
System.out.println(result);//可以正常输出数据
return SUCCESS;
}
struts.xml配置文件<action name="search" class="chooseAction" method="searchCourse">
<result type="json">
<param name="root">result</param>
</result>
</action>
ajax代码$("#search").click(function(){
$.ajax({
url:"/StudentManageSystem/choose/search.action?course.courseNo="+$("#courseno").val()+"&timed="+new Date(),
dataType:"json",
success:function(data){
alert(data);//返回的是null,为何?
var course = eval("("+data+")");
if(course!=null){
$("div .searchresult").append("<div><input type='text' value='"+course.courses.coursename+"' id='coursename1'/><input type='submit' id='addcourse1'/></div>");
} else {
alert("输入代码不正确,重新输入");
}
}
});
});

解决方案 »

  1.   

    $("#search").click(function(){
            $.ajax({
                url:"/StudentManageSystem/choose/search.action?course.courseNo="+$("#courseno").val()+"&timed="+new Date(),
                dataType:"json",
                method:'post',
                success:function(data){
                    alert(data);//返回的是null,为何?
                    var course = eval("("+data+")");
                    if(course!=null){
                        $("div .searchresult").append("<div><input type='text' value='"+course.courses.coursename+"' id='coursename1'/><input type='submit' id='addcourse1'/></div>");
                    } else {
                        alert("输入代码不正确,重新输入");
                    }
                },failure:function(data){
                      alert("错误");
                   }
            });
        });
      

  2.   

    建议 你 这样写 
    看看 是不是真的 进了 success 这个属性里面了
      

  3.   

      是进了success里,但是就是返回null,不知道什么原因
      

  4.   

    public String searchCourse()throws Exception{ course = coursemanage.searchCourse(course.getCourseNo()); jsonobject = new JSONObject(); jsonobject.put("courses",new JSONObject(course)); result = jsonobject.toString(); System.out.println(result);//可以正常输出数据  return result; }
      

  5.   

    我不熟悉struts,请问你的result在哪里返回了? return SUCCESS 可以返回result么?
      

  6.   

    我之前的几个ajax请求 return的都是SUCCESS啊,没问题,就是这个出问题了,所以我感到很奇怪
      

  7.   

    LZ试下out.println(jsonArray.toString());看看能行么?
      

  8.   

    response.getOutPutStream().write(),你的ajax的数据需要这样返回给前台
      

  9.   

    发现问题了,IE里可以收到响应的内容,FF就不行。
    但是IE收到了响应却不能动态添加HTML元素,郁闷