2014-01-07 58 views
0

我有一個代碼,顯示不同的輸入文本框,如下<JSP>如何使用選擇框選項

<tr> 
    <td colspan="3"> 
    <select name="selectOp" id="selectOp" style="height:19px;"> 
     <option value="clipNo">CLIP NO</option> 
     <option value="tapeNo">TAPE NO</option> 
     <option value="cdNa">CONTENT NAME</option> 
    </select> 
     <c:if test="${selectOp == 'clipNo'}" > 
      <span class="br"><input type="text" id="searchWord" name="searchWord" style="width:500px;height:19px;" /></span> 
     </c:if> 
     <c:if test="${selectOp == 'tapeNo'}" > 
      <span class="br"><input type="text" id="searchWord2" name="searchWord2" style="width:500px;height:19px;" /></span> 
     </c:if> 
     <c:if test="${selectOp == 'tapeNo'}" > 
      <span class="br"><input type="text" id="searchWord3" name="searchWord3" style="width:500px;height:19px;" /></span> 
     </c:if> 
    </td> 
</tr> 

如果我選擇clipNo,然後搜索欄應該是ID =「搜索內容」 NAME =「搜索內容」

如果我選擇tapeNo,然後搜索欄應該是ID = 「searchWord2」 NAME = 「searchWord2」

如果我選擇videoNo,然後搜索欄應該是ID = 「searchWord3」 NAME = 「searchWord3」

但由於某種原因,搜索欄不顯示。誰能幫忙?

回答

1

使用JavaScript/jQuery函數生成動態文本

JSP

<select name="selectOp" id="selectOp" style="height:19px;" onchange="dynamicTextField()"> 
    <option value="clipNo">CLIP NO</option> 
    <option value="tapeNo">TAPE NO</option> 
    <option value="cdNa">CONTENT NAME</option> 
</select> 
// div to add text fields dyanamically using jQuery 
<div id="dyanamicDivElement"></div> 

的JavaScript/jQuery的

function dynamicTextField() 
{ 
    var selectVal = $('#selectOp').val(); 
    if(selectVal == "clipNo") 
    { 
     var newTextField = "<span class='br'><input type='text' id='searchWord' name='searchWord' style='width:500px;height:19px;' /></span>"; 
     $('#dyanamicDivElement').append(newTextField); 
    } 
    else if(selectVal == "tapeNo") 
    { 
     var newTextField = "<span class='br'><input type='text' id='searchWord2' name='searchWord2' style='width:500px;height:19px;' /></span>"; 
     $('#dyanamicDivElement').append(newTextField); 
    } 
    else if(selectVal == "videoNo") 
    { 
     var newTextField = "<span class='br'><input type='text' id='searchWord3' name='searchWord3' style='width:500px;height:19px;' /></span>"; 
     $('#dyanamicDivElement').append(newTextField); 
    } 
} 

相關鏈接


現在回答你的問題

但由於某些原因,在搜索欄沒有顯示出來。

這是因爲頁面,請求,會話,應用程序範圍內沒有像${selectOp}這樣的變量。它是HTML元素。

Web容器通過根據PageContext.findAttribute(String)的行爲查找其值來評估出現在表達式中的變量。
例如,在評估表達式${selectOp}時,容器將在頁面,請求,會話和應用程序作用域中查找selectOp,並將返回其值。如果selectOp未找到,則返回null

相關鏈接

相關問題