2012-08-05 53 views
0

我有一個包含IFRAME的主html頁面。 我有一個服務器端jsp代碼,第一次在IFRAME中顯示一些默認值。 每當有人嘗試使用主頁面中的搜索按鈕時,結果將顯示在IFRAME中更新其內容。 我有一個servlet,對搜索到的數據進行計算並更新IFRAME內容。在容器頁面提交<form>時更新容器頁面中的iframe

問題:
我在servlet來刷新IFRAME但無濟於事使用的sendRedirect方法。 我傳遞給sendRedirect的字符串是/results.jsp?search=value&size=1(jsp將顯示在iframe中)。 該小服務程序的計算工作正常,但打開一個新頁面來代替主頁面:不是所需的輸出。 其接口的主頁應該保留在那裏,只有IFRAME應該刷新。

我的問題:
這是刷新iframe的正確方法嗎?如果不是,請告訴我應該通過servlet更新我的iframe(jsp)。

PS:請原諒這個問題的荒謬性,如果有的話。我是jsp-servlet的新手。

任何幫助深表感謝

+0

這是正確的:要提交搜索表單到ifram在同一頁面上的搜索框和b utton,並有results.jsp做所有的搜索工作? – 2012-08-05 19:22:12

+0

如果是這樣,那麼你只是問如何在iFrame中提交表單。 – 2012-08-05 19:22:36

回答

1

當您使用response.sendRedirect()方法進行重定向時,servlet被調用的實際「框架」將被修改。該框架可以是整個頁面,也可以是iframe,甚至可以是javadoc中使用的傳統框架。

正如@ Jake223說,設置形式target屬性的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> 
+0

是的,它做到了。 @ jake223:非常感謝。我沒有在一開始就完全得到你的答案。 Jit B:當然,感謝你的迴應和示例。我設置了按鈕的目標,那就是問題所在。謝謝你們的幫助。 – 2012-08-06 08:20:45

+0

@ashishdabral如果有幫助,請接受這個答案。謝謝 – 2012-08-06 10:13:44

1

如果搜索機制是一個HTML表單,您可以在表單的target屬性設置爲有問題的iframe的名稱。有關更多詳細信息,請參閱W3Schools's page on this

相關問題