为此目的有一个内置标签。
用户在文本框中输入一个字符,以输入字符开头的字符串应显示在 列表的形式。 从列表中选择的项目应填充在文本框中。
P.S:示例和演示可用显示包含输入字符的字符串。但是我只希望显示那些字符串 以输入的字符开头。
答案 0 :(得分:1)
执行此操作的方法显示在pluguin的wiki page中,其中显示:处理JSON结果的自动完成程序。你只需在你的jsp中设置代码,然后在你的行动中实现类似的东西:
private static String[] staticLanguages = { ...a list... };
private String term;
private String[] languages = Autocompleter.staticLanguages;
public String execute() throws Exception {
if (term != null && term.length() > 1)
{
ArrayList<String> tmp = new ArrayList<String>();
for (int i = 0; i < staticLanguages.length; i++)
{
if (StringUtils.contains(staticLanguages[i].toLowerCase(), term.toLowerCase()))
{
tmp.add(staticLanguages[i]);
}
}
languages = tmp.toArray(new String[tmp.size()]);
}
return SUCCESS;
}
只需更改StringUtils.contains行,然后检查开头是否相同。
jsp标签是:
<sj:autocompleter
name="term"
id="languages"
href="%{remoteurl}"
delay="50"
loadMinimumCount="2"
/>
我认为这应该有效。只需看一下wiki中的示例代码,然后尝试一下。
答案 1 :(得分:0)
我使用Struts2和Jquery创建了自己的自动完成实用程序,它从oracle读取数据并显示建议列表,您可以根据需要进行相应更改。请从这里下载代码http://javaant.com/dynamic-autocomplete-using-jquery-struts2-and-oracle/#.V0RxL5N96Hs