0

我正在使用jsp和ajax。我正在尝试<tr>使用 ajax 替换标签的 innerHTML,这对我不起作用-

<tr id="replace">
</tr>

我使用ajax调用的页面-

<td>
<% 
String id = request.getParameter("id");
out.println("<h3>"+id+"</h3>");
%>
</td>

但以下工作,我不需要 -

<tr>
<td id="replace"></td>
</tr>

页面称为-

<% 
String id = request.getParameter("id");
out.println("<h3>"+id+"</h3>");
%>

所以简而言之,我需要做什么来替换整个<tr>标签的 innerHTML 而不仅仅是一个<td>标签?

非常感谢提前!

4

2 回答 2

0

你的控制是倒置的。您的服务器端代码应该返回结果,而您的客户端应该决定如何呈现它。即根据Ajax的结果获取你的id并写入你的内部HTML;不要试图让你的服务器这样做。

于 2013-01-04T22:11:47.620 回答
0

至少在 IE 中,我不知道为什么,innerHTML 对<tr>. 这些是让 jQuery 如此受欢迎的小烦恼:它规避了那些奇怪和不一致的行为,并提供了更合乎逻辑和功能性的 API。我会简单地使用 JQuery:

$('#replace').html(theNewHtml);

http://jsfiddle.net/fxUwS/1/

于 2013-01-04T22:22:39.967 回答