dojo 预先选择sx:autocompleter中的选项

avwztpqn  于 2022-12-08  发布在  Dojo
关注(0)|答案(1)|浏览(202)

我在jsp中有一个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的正确方法?

lokaqttq

lokaqttq1#

当然,这不是正确的方式,id不是HTML标签属性,而是JSP标签属性,您在javascript代码中错误地使用了它。无论如何,如果您想预先选择值,您应该使用value属性。来自文档页面autocompleter的说明
valuefalsefalseString预设输入元素的值
注意:从Struts 2.1开始,dojo插件已过时。

相关问题