gpt4 book ai didi

java - 无法在 Ajax 和 qTip2 中显示 HTML servlet 的响应

转载 作者:塔克拉玛干 更新时间:2023-11-02 08:44:11 27 4
gpt4 key购买 nike

我正在尝试在 jsp 中的 qTip2 工具提示中显示从 servlet 响应接收到的文本(或 html)。我几乎所有的东西都在工作,并且已经用 Firebug 验证了正在调用 servlet 并且正在返回文本,但是当我尝试在我的 ajax 调用中使用“html”(或数据)变量时,我得到一个错误: HierarchyRequestError:无法将节点插入层次结构中的指定点。

我试过在 JavaScript 警报中显示 html,显示的是:[object XMLDocument]。

这是事件的顺序:

1.用户点击一段HTML文本,其中定义了一个指向servlet并传递参数的链接

2.ajax调用servlet做一些处理并返回文本或html

3.用qTip2将文本显示为tooltip

我如何才能正确处理来自 servlet 的响应并操作从它接收到的文本?

Ajax 调用:

$(".ajax_link").click(function(e) {
e.preventDefault();
var $this = $(this);
var link = $(this).attr('href'); //Gets link url

$.ajax({
type: "GET",
url: link,
cache: false,

}).done(function(html) {

$this.qtip({
content: {
text: html //<--this causes error above
//text: "<table><tr><th>Team</th></tr></table>" <--this works fine
}
});

$this.qtip('toggle', true);

});
});

Servlet 代码:

protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {

System.out.println("inside doGet");

String var1 = "<table><tr><th>Team</th></tr></table>";

//var1 = request.getParameter("var1");

response.setContentType("text/html");
response.setCharacterEncoding("UTF-8");
PrintWriter out = response.getWriter();
out.print(var1);
out.flush();
out.close();
}

最佳答案

在 ajax 请求中将数据类型作为 html 传递即

$.ajax({
type: "GET",
url: link,
cache: false,
dataType : "html"

}

关于java - 无法在 Ajax 和 qTip2 中显示 HTML servlet 的响应,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29654179/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com