2016-09-13 48 views
-1

我有選擇框,我從所有員工列表中選擇員工姓名。我想要實現的是獲得對象僱員的其他屬性。我使用javascript來實現它,但我總是從列表中獲取第一個元素(索引0)。下面是代碼:基於選擇框的值的彈簧填充表單域

<sf:select path="employee" onchange="change()" > 
    <sf:option value=""> 
     Choose employee 
    </sf:option> 
    <sf:options itemLabel="employeeName" items="${employeeList}" 
      itemValue="employeeId" /> 
    </sf:select> 

<input id="licenseNr"/> 

和Javascript:

<script> 
    function change(){ 
     var comboIndex = document.getElementById("employee").value;   
     document.getElementById("licenseNr").value=("${employeeList.get(comboIndex).licenseNr}"); 
     } 
    </script> 

回答

0

我已經通過網址與jquery

$(function() { 
     $("#employee") 
       .change(
         function(e) { 
          var option = $(this).val();        
          var newUrl = "someUrl?id="+option; 
          window.location=newUrl;        
         }); 
    }); 

在控制器我已經加入RequestParam註釋

添加參數解決的問題
@RequestMapping(value = "/someUrl", method = RequestMethod.GET) 
public String showForm(@RequestParam(required = false, defaultValue="-1") 
Integer id,Model model){ 
if(id>0){ 
    Employee employee = service.fetchEmployeeById(id);  
       model.addAttribute("employee", employee);} 
    return "someUrl";} 

然後我給文本字段增加了價值

<input id="licenseNr" value="${employee.licenseNr}" /> 
相關問題