2014-04-27 94 views
0

我是jsp的新手,我創建了第一個jsp頁面。 在這裏我想設置用戶給定的值以顯示在下面的文本框中。但是在提交之後,那些只需要空值。 我的代碼如下所示。爲什麼POST參數不取值?

<form action="index.jsp" method="post"> 
      <table> 
       <tr> 
        <td>Country</td> 
        <td><input id="countryText" type="text" > </td> 
       </tr> 
       <tr> 
        <td>City</td> 
        <td><input id="cityText" type="text" ></td> 
       </tr> 
       <tr> 
        <td>Check in Date</td> 
        <td><input id="checkinText" type="text" ></td> 
       </tr> 
       <tr> 
        <td>No of Nights</td> 
        <td><input id="noOfNightsText" type="text" ></td> 
       </tr> 
       <tr> 
        <td>No of Rooms</td> 
        <td><input id="noOfRoomsText" value="1" type="text" disabled></td> 
       </tr> 
       <tr> 
        <td></td> 
        <td align="right"><button id="searchButton" type="submit" class="buttonClass">Search Hotels</button></td> 
       </tr> 
      </table> 
     </form> 

     <table> 
      <tr> 
       <td>Country</td> 
       <td><input id="countryTextOutput" value="<%= request.getParameter("countryText")%>" type="text" disabled> </td> 
      </tr> 
      <tr> 
       <td>City</td> 
       <td><input id="cityTextOutput" value="<%= request.getParameter("cityText")%>" type="text" disabled></td> 
      </tr> 
      <tr> 
       <td>Check in Date</td> 
       <td><input id="checkinTextOutput" value="<%= request.getParameter("checkinText")%>" type="text" disabled></td> 
      </tr> 
      <tr> 
       <td>No of Nights</td> 
       <td><input id="noOfNightsTextOutput" value="<%= request.getParameter("noOfNightsText")%>" type="text" disabled></td> 
      </tr> 
      <tr> 
       <td>No of Rooms</td> 
       <td><input id="noOfRoomsTextOutput" value="<%= request.getParameter("noOfRoomsText")%>" type="text" disabled></td> 
      </tr> 
     </table> 

我的Web界面 Web Interface

在此先感謝..!

+2

此外,請嘗試爲您的輸入添加名稱屬性。 – thexacre

+0

@mit:這應該是一個答案(如果你詳細闡述了一下)。 –

+0

它的工作原理。非常感謝:) –

回答

2

您需要name屬性添加到您的輸入字段,例如:

<input id="countryText" type="text" > 

應該改爲:

<input id="countryText" name="countryText" type="text" > 

另外,還要確保你的字段是表單中。

0

request.getParameter取input元素的name屬性。在這裏你已經給出了ID。 嘗試爲您的輸入元素添加名稱屬性。

<table> 
       <tr> 
        <td>Country</td> 
        <td><input name="countryText" type="text" > </td> 
       </tr> 
       <tr> 
        <td>City</td> 
        <td><input name="cityText" type="text" ></td> 
       </tr> 
       <tr> 
        <td>Check in Date</td> 
        <td><input name="checkinText" type="text" ></td> 
       </tr> 
       <tr> 
        <td>No of Nights</td> 
        <td><input name="noOfNightsText" type="text" ></td> 
       </tr> 
       <tr> 
        <td>No of Rooms</td> 
        <td><input name="noOfRoomsText" value="1" type="text" disabled></td> 
       </tr> 
       <tr> 
        <td></td> 
        <td align="right"><button id="searchButton" type="submit" class="buttonClass">Search Hotels</button></td> 
       </tr> 
      </table> 
0

request.getParameter期望名稱不是id來獲取字段的值。

所以使用name屬性,並通過內部的名字你request.getParameter(name)

這將解決你的問題100%

一個快速的解決方案

把你的ID和名稱相同。無需更改任何顯示內容

+0

嗨@KB,同時回答哈哈... !! :) –

+0

嗨Ramesh..ya什麼巧合親愛的... –

相關問題