如何为jQuery中的标记属性指定显式值。

时间:2015-05-23 06:04:56

标签: jquery spring-mvc

我正在创建动态下拉菜单并将ajax数据分配给c:forEach循环的其中一个item属性。我将数据保存在警报中,但是在将其分配给" items" tag.Please告诉我有什么问题。

HTML和jQuery代码:

11:01:09,105 INFO  [org.jboss.as.connector.subsystems.datasources] (MSC service thread 1-4) JBAS010400: Bound data source [java:/SpecOpsDB]

2 个答案:

答案 0 :(得分:1)

jsp中不需要c:ForEach标记,因为jstl标记在服务器端处理,但选项标记在客户端处理。因此,无法在不提交表单的情况下将c:ForEach标记的变量值(始终为空)分配给选项。

FIX:

在jsp中:

<div class="form-group">
<label for="subCategory" class="col-lg-1 control-label">SubCategory</label>
<div class="col-lg-4">
    <select class="form-control" name="subCategory" id="subCategory">
        <option value="">--Please select sub-category--</option>
    </select>
</div>

在js:

var jsonSubCat = $.parseJSON(JSON.stringify(data));
var $select = $('#subCategory');
$select.empty().prepend(
            "<option value='' selected='selected'>--Please select sub-category--</option>");
$(jsonSubCat).each(function(index,o) {
   var $option = $("   <option/>").attr("value",o.subCategoryId).text(o.subCategoryName);
            $select.append($option);
});

我希望这对你有用。

答案 1 :(得分:0)

我已经解决了这个问题。 jsp中不需要c:ForEach标记,因为jstl标记在服务器端处理,但选项标记在客户端处理。因此,无法在不提交表单的情况下将c:ForEach标签的​​变量值分配给选项。

FIX:

在jsp中

<div class="form-group">
<label for="subCategory" class="col-lg-1 control-label">SubCategory</label>
<div class="col-lg-4">
    <select class="form-control" name="subCategory" id="subCategory">
        <option value="">--Please select sub-category--</option>
    </select>
</div>

在js

var jsonSubCat = $.parseJSON(JSON.stringify(data));
var $select = $('#subCategory');
$select.empty().prepend(
            "<option value='' selected='selected'>--Please select sub-category--</option>");
$(jsonSubCat).each(function(index,o) {
   var $option = $("   <option/>").attr("value",o.subCategoryId).text(o.subCategoryName);
            $select.append($option);
});

我希望这对某人有用。