2010-04-06 74 views
3

我有一個HTML文件,我想用JavaScript來調用一個JSP文件。用Javascript調用JSP文件

它不一定是JavaScript,我只是尋找從HTML文件中調用JSP文件的最簡單方法。

我該怎麼做?

謝謝。

+0

我應該補充說我想在後臺調用JSP文件。 – hmak 2010-04-06 20:00:15

回答

5

HTML/CSS/JavaScript的運行在客戶端。 Java/JSP在服務器端運行。客戶端和服務器是兩個不同的環境,它們通常運行在物理上不同的機器上,通過網絡以HTTP的通信協議相互連接。

當客戶端在服務器上請求特定的URL時,服務器將運行特定的Java/JSP代碼並將HTML/CSS/JS響應返回給客戶端。客戶端(webbrowser)將依次執行HTML/CSS/JS。

瞭解這一事實,很明顯,讓JavaScript訪問/調用某些Java/JSP代碼的唯一方法是向服務器端發送HTTP請求。這可以通過幾種方式完成:使用window.location執行同步GET請求,或使用form.submit()執行同步GET或POST請求,或使用XMLHttpRequest#send()執行異步(阿賈克斯)請求。

但是畢竟你根本就不需要JavaScript。一個簡單的HTML鏈接或表單也是足夠的。

<a href="page.jsp">link</a> 

<form action="page.jsp"> 
    <input type="submit"> 
</form> 

這將打開JSP文件。如果你想打開的JSP頁面之前,運行一些商業的東西,那麼最好讓URL指向像<a href="page">一個Servlet這反過來像

request.getRequestDispatcher("/WEB-INF/page.jsp").forward(request, response); 

要了解更多關於請求到JSP頁面轉發Java/JSP和JavaScript之間的牆可能會發現this article有用。

+0

謝謝,文章幫助。 – hmak 2010-04-06 17:28:04

+0

不客氣。 – BalusC 2010-04-06 17:38:07

1

我想你是在談論Ajax。其中u有背景的JSP頁面來完成在這種情況下,處理嘗試此鏈接link text

一旦ü瞭解這款U可以切換到原型的Ajax jQuery的這是更好的方式:)

1

你必須做出某種的形式和窗體的action屬性把yourPage.jsp.Something像

<form action="index.jsp" method="post" accept-charset="utf-8">