在Jquery Ajax调用中,获取整个HTML内容作为响应

时间:2011-11-02 10:35:41

标签: jquery

这是我的服务器端编码到JSP

<html>
<head>
</head>
<%

int number = 10;
    out.println("The Returned response as per the hardcoded values is "+number);
%>
</html>

正如您所看到的那样,我正在返回一个数字作为AJAX调用的响应

在Script.js文件中,我正在以这种方式处理它:

                                 $.ajax({
        type : "post",
        url : "calculate.jsp",
       dataType: "html",
        success : function(msg) {
            var pinNumber = msg;
            alert(pinNumber);
        }
    });

因此,我将整个HTMl内容作为响应,如图所示 http://tinypic.com/view.php?pic=vy431w&s=5

2 个答案:

答案 0 :(得分:1)

那是因为你确实渲染了<html><head>。你可以删除那些或

简单的方法是:

success : function(msg) {
    alert($(msg).text());
}

更难但可能更清洁的方式是:

out.println("<div>The Returned response as per the hardcoded values is "+number+"</div>");

....

success : function(msg) {
    var pinNumber = $("div", $(msg));
    alert(pinNumber.html());
}

答案 1 :(得分:0)

这很正常,因为你还包含了一些HTML代码:

<html>
<head>
</head>

删除HTML标记,它会起作用。 Afaik,JS按预期工作。