【问题标题】:How to use a modelAttribute value in Jquery for Select box如何在 Jquery 中为选择框使用 modelAttribute 值
【发布时间】:2014-04-09 19:06:18
【问题描述】:

我从数据库中获取了一个地图,我想使用该数据来填充选择框。使用 SellerCodeList 将 Map 添加到模型中

在 Spring 中很简单:

<form:select path="orderDetails[0].SellerItemCode" items="${sellerCodeList}">
</form:select>

但我想在构建我的选择框的 Jquery 函数中使用相同的函数。 (原因:我有一个动态行的表,每一行都有一个选择框作为元素之一

当我使用以下内容时,我开始收到错误/异常

$("#poFields").append('<tr valign="top"><td>
<form:select path="orderDetails['+rowNum+'].SellerItemCode" items="${sellerCodeList}">
</form:select>');

这会引发异常

我在 SO 上看到有一种方法可以遍历 SellerCodeList 并按照以下Dropdown link from SO 提供给选项

虽然我不擅长 JSON 的东西 ;-)

有人可以帮忙

【问题讨论】:

  • 你不能在jquery中渲染spring标签或元素,spring标签在渲染jsp时会被处理。
  • 是的 .. 我意识到 .. 是否有替代方法来填充下拉列表?

标签: java jquery spring spring-mvc select


【解决方案1】:

您需要将您的项目“打印”到 JS 中,以便您的 JS 代码可以访问它们。像这样的:

<script>
    var sellerCodes = {};
    <c:forEach items="${sellerCodeList}" var="entry">
        sellerCodes['${entry.key}'] = '${entry.value}';
    </c:forEach>
    // you can now use sellerCodes in your JS code as a map.
</script>

【讨论】:

  • sellerCodeList 是一个包含数据库键值对的映射。我需要他们两个。另外,请您建议使用sellerCodeListJs的方式..谢谢
  • 我如何将它提供给选择框选项?如果我必须查看以前是否有任何选择.. 我可以做类似 selected=${someVar} 的事情吗
  • @ike_love.. 感谢您的回答.. 我部分使用它来获得我想要的...
  • @SaurabhSinghal - 太棒了!很高兴我能帮上忙。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-03-07
  • 1970-01-01
  • 2015-07-05
  • 1970-01-01
  • 2013-10-11
相关资源
最近更新 更多