0

我有一个包含 IFRAME 的主 html 页面。我有一个服务器端 jsp 代码,它第一次在 IFRAME 中显示了一些默认值。每当有人尝试使用主页中的搜索按钮时,结果都会显示在 IFRAME 中并更新其内容。我有一个 servlet 对搜索到的数据进行计算并更新 IFRAME 内容。

问题:
我已经使用sendRedirectservlet中的方法来刷新IFRAME但无济于事。我传递给的字符串sendRedirect/results.jsp?search=value&size=1(要在 iframe 中显示的 jsp)。servlet 的计算工作正常,但会打开一个新页面来代替主页:不是所需的输出。带有界面的主页应该保留在那里,只有 IFRAME 应该刷新。

我的问题:
这是刷新 iframe 的正确方法吗?如果不是请告诉我应该使用什么来通过 servlet 更新我的 iframe (jsp)。

PS:如有问题请见谅。我是 jsp-servlet 的新手。

任何帮助深表感谢

4

2 回答 2

1

当您使用 response.sendRedirect() 方法进行重定向时,将修改调用 servlet 的实际“框架”。该框架可以是整个页面,也可以是 iframe,甚至是 javadocs 中使用的遗留框架。

正如@Jake223 所说,将目标属性设置为表单中的 iframe 名称:

如果您使用表单提交信息,那么您可以执行以下操作:

<iframe name="resultframe"></iframe>
<form action=[path to servlet] target="resultframe">
    <input type="text" name="searchq"/>
    <input type="submit" value="search"/>
</form>

如果您使用 javascript 创建 iframe,请使用 iframe 的 src 属性:

<iframe src=[path to servlet]?[request params]></iframe>
于 2012-08-06T07:42:30.043 回答
1

如果搜索机制是 HTML 表单,您可以将target表单的属性设置为相关 iframe 的名称。有关详细信息,请参阅W3Schools 的页面。

于 2012-08-05T19:28:54.043 回答