2012-03-26 159 views
0

嗨,我想知道如何預選選項。我想我可以用JavaScript做它,因爲我設法得到COUNTRYCODE而不是下拉得到適當設置:如何在這種情況下預先選擇一個選項?

enter image description here

在這種情況下,我想也是dropdodown得到填充爲「英格蘭」其中有值GB。我該怎麼做?我的JSP是:

<input type="text" class="inp_sel" size="2" 
     name="<%=PandoraFieldConstants.FIELD_LANDKOD%>" 
     id="<%=PandoraFieldConstants.FIELD_LANDKOD%>" 
     value="<%if (ansokanInfo.getUppfinnareList().contains(editPerson)|| ansokanInfo.getSokandeList().contains(editPerson)){ out.write(editPerson.getLandKod());}%>"   
     onkeyup="setListbox(event, this, '<%=PandoraFieldConstants.FIELD_LAND%>')"; 
     onmousedown="setListboxEmpty(this)";>             
     <SELECT name="<%=PandoraFieldConstants.FIELD_LAND%>" 
      id="<%=PandoraFieldConstants.FIELD_LAND%>" 
      class="inp_sel" onChange="setSearchbox(this, '<%=PandoraFieldConstants.FIELD_LANDKOD%>')"> 
      <% for(LandKod land: pc.getLander()) { %> 
      <OPTION value="<%=land.getLandKod()%>" 
      <% if (land.getLandKod().equalsIgnoreCase("SE")) { 
      out.println("SELECTED"); 
      } %> 

而且我的JavaScript

function setListbox(e, obj, id) { 

    //    sokLandkod input 
    //    sokLand select 

    if(e.keyCode == 13 || e.keyCode == 8) { return; } 
    if (obj.value.length < 2) { return; } 

    var landList = document.getElementById(id); 
    var searchKod = obj.value; 
    var len = searchKod.length; 
    obj.value = ""; 

    for (var i = 0; i < landList.options.length; i++) { 

         sListValue = landList.options[i].value; 
         var matchIx = sListValue.toUpperCase().indexOf(searchKod.toUpperCase()); 

    if (matchIx == 0) { 
         landList.selectedIndex = i; 
         obj.value = landList.options[i].value; 
         break; 
    } 
    } 
} 


function setSearchbox(obj, id) { 

    var iny = 'sokLandkod' 
    var searchKod = obj.value; 
    document.getElementById(id).value = searchKod; 
} 

      ><%=land.getLandNamn() %> 
      </OPTION> 
      <% } %> 
      </SELECT> 

你能不能指點我如何設置的選項?

謝謝

回答

1

如果英格蘭的價值是「GB」 ...你應該更改下面的代碼片段選擇「GB」,而不是「SE」(那是SVERIGE的價值? ):

<% if (land.getLandKod().equalsIgnoreCase("SE")) { 
    out.println("SELECTED"); 
} %> 

除非,我誤解了你的數據......它會看起來像這樣。

<% if (land.getLandKod().equalsIgnoreCase("GB")) { 
    out.println("SELECTED"); 
} %> 
+0

我可以修復它做類似的事情。謝謝你的答案。 – 2012-03-27 13:55:05

相關問題