2016-02-10 88 views
0

我在我的jsp中有一個sx:autocompleter下拉列表和一個隱藏元素。預先在sx中選擇一個選項:autocompleter

<sx:autocompleter list="vendorNameList" name="vendor_name" 
autoComplete="false" id="vendor_name" value="%{vendor_name}"/> 

<s:hidden name="vendorName" id="vName"></s:hidden> 

function setSelectedIndex() { 
selectionVname=dojo.widget.byId('vendor_name'); 
v=document.getElementById('vName').value; 

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

    if (selectionVname.options[i].text == v) { 

     selectionVname.options[i].selected = true; 

     return; 

    } 
} 
} 
window.onload = setSelectedIndex; 

我希望此vendorName成員的值在頁面加載時作爲預選的下拉值。我寫的腳本不起作用。它在進入for循環之前就打破了。我懷疑selectionVname.options.length是否是寫入sx:autocompleter的正確方法?

回答

0

當然這不是正確的方法,id不是HTML標記屬性,而是一個JSP標記屬性,並且您在JavaScript代碼中虐待它。任何方式,如果你想預先選擇你應該使用value屬性的值。從文檔page

valuefalsefalseString預置輸入元素的值的描述

注意:因爲Struts的2.1道場插件已棄用。

相關問題