【发布时间】:2016-06-26 09:54:21
【问题描述】:
我正在从下拉列表(oncgange 函数)向控制器发送一个 ID。它工作正常。现在在控制器中从数据库查询结果存储在 arrylist 中。我已经给出了 returntype arrylist。是否正常或有任何错误。请帮忙。我只想显示另一个基于第一个下拉列表的选定值的下拉列表。 假设我选择了 Fruit ,所以我想在 jsp 中填充它。
<option value="mango">Mango</option>
<option value="pineapple">Pineapple</option>
jsp
<script>
function getScode()
{
var code = document.getElementById('code'),
code = code.value;
jQuery.ajax({
type: 'POST',
url: 'scode.htm',
data: {
code: code
},
success: function (html) {
$('#scode_data').html(html).show();
}
});
return false;
}
</script>
Select Genre
<select name="code" id="code" onchange="getScode();">
<option value="1">Fruit</option>
<option value="2">Game</option>
</select>
Under that
<div id="scode_data"></div>
控制器
@RequestMapping(value="/scode", method = RequestMethod.POST)
public @ResponseBody ArrayList getScode(ModelMap modelMap, @RequestParam(value = "code", required = false) String code_val, HttpServletRequest request, HttpServletResponse response)
throws ClassNotFoundException {
SimpleDriverDataSource dataSource = new SimpleDriverDataSource();
dataSource = new dbconnection.connection().getConnection(dataSource);
JdbcTemplate jt = new JdbcTemplate(dataSource);
String sql = "SELECT * FROM cat WHERE fcode='"+code_val+"'";
srs = jt.queryForRowSet(sql);
while (srs.next()) {
pojo obj2 = new pojo();
obj2.setScode(srs.getString("fcode"));
obj2.setSname(srs.getString("fname"));
arraylist.add(obj2);
}
return arraylist;
}
【问题讨论】:
-
您将发送 json 版本的数组列表。并在成功函数中解析您收到的 json 并将其附加到另一个
-
我现在可以通过 ajax 获取数据。但它显示 ... arraylist 数据,如 .... ** model.pojo@14e79b55model.pojo@46162020 **
-
检查您在浏览器控制台中取得的成功。
success: function (html) { console.log(html); $('#scode_data').html(html).show(); }你应该得到对象数组。发布那个截图。 -
@SurajRoy 由于您尚未将列表转换为 json,因此您将获得相同的 toString 表示。 stackoverflow.com/questions/20801248/…这对你有帮助
-
@SanjayRawat 不能发截图,分数不够
标签: jquery jsp spring-mvc httpresponse