我正在使用 AJAX jQuery插件jar与Struts 2。我使用 AJAX 选择标签填充列表,但列表没有填充。如果我使用<sj:autocompleter>
标签,它工作正常。
这是我的代码:
<sj:select name="countryId" list="countryList" listKey="id" listValue="name"
headerKey="" headerValue="--Select Country--"
onchange="document.forms[0].action='city_countryChange'; document.forms[0].submit(); return true;"
required="required"></sj:select>
<sj:select>
标签有什么问题?
1条答案
按热度按时间cedebl8k1#
当你使用
sj:autocompleter
时,你说它工作正常,你已经使用了href
属性。sj:select
href
属性也可用于填充由sj:select
呈现的HTMLselect
标记。每个标记的属性集略有不同,href
属性也与HTMLselect
标记中的属性不同。href
属性是可用的,并由两个标记使用,您应该提供由填充sj:select
标记的操作返回的JSON结果。但是如果你使用autocomplete=true
属性,那么sj:select
的行为就像sj:autocompleter
一样,并生成input
标记而不是select
标记。您应该定义输出所需的HTML标记。使用属性可能会从根本上改变呈现的HTML。如果你使用
list
属性和sj:select
标签,而不使用autocomplete
属性,那么当执行结果时,简单的select
和options
将被呈现。就像使用序数s:select
一样。因此,您应该为list
属性值提供getter,如Country
bean应该包含id
和name
属性,因此它也可以被OGNL访问。