我做了两个选择框'State'和'City'。这里,分支的值基于状态填充。以下是帮助我做到这一点的代码片段。
@RequestMapping(value = "getBranchlist.htm", method = RequestMethod.GET, headers = "Accept=*/*")
public @ResponseBody String getBranchList(@RequestParam("state")String state) {
ApplicationContext context =
new ClassPathXmlApplicationContext("Beans.xml");
MasterJDBCTemplate dao =
(MasterJDBCTemplate)context.getBean("masterJDBCTemplate");
List<String> fans = dao.getBranchList(state);
String branch = "";
for(String fan : fans)
branch+=fan+",";
if(branch.length()== 0){
branch = "";
}else{
branch = branch.substring(0, branch.length() - 1);
}
return branch;
}
和jQuery代码
$(function(){
$("#state").change(function(){
var state = $("#state").val();
$.get("getBranchlist.htm",{ "state":state},function( data ) {
var target = $("#branch");
target.find('option').remove();
target.append($('<option/>').val("").text("---Select"));
if(data == ""){
return false;
}
var opts = data.split(',');
$.each(opts, function(i, opt){
target.append(
$('<option/>').val(jQuery.trim(opt)).text(jQuery.trim(opt)));
});
});
});
});
这是好的,这是我得到的。
我尝试过使用autocomplete(显示数据库中的所有分支)功能,如下所示---&gt; http://jqueryui.com/autocomplete/#remote
所以我试着这样做
$(function() {
$( "#branch" ).autocomplete({ source: "getBranchlist.htm" });
}
但是我没有得到输出。我想我将不得不在控制器中进行一些更改以返回'JSON'。我的控制器应该返回什么?用什么格式?如果我想要展示'俄亥俄','米兰','悉尼'。