我通过会话变量将列表从java动作类传递给jsp文件,我需要将该列表设置为隐藏的输入字段,并将该列表获取到我使用以下方法执行该操作的jquery函数
我使用此代码块将set list添加到输入字段
<c:if test="${not empty sessionScope.myList}">
<c:forEach items="${sessionScope.myList}" var="item" varStatus="itemLoop">
<input class="myClass" type='hidden' value='${item}'/>
</c:forEach>
</c:if>
jquery方法
$(document).ready(function () {
$('input.myClass').each(function() {
// do some work
});
}
但问题是它仅在第一次工作,我的列表值由ajax调用更改,但在更改列表大小和值后,它没有相应地设置值。 当我第二次设置值时,拳头时间创建的输入字段也存在。我认为我的方法不是正确的方法,如果有人知道更好的方法,请帮助我 谢谢..!
答案 0 :(得分:1)
但问题是它的第一次工作,我的列表值是由ajax调用改变的,但是在更改列表大小和值之后它没有相应地设置值,第一次创建的输入字段也在那里
您需要先删除创建的元素:
$("input.myClass").remove();
或者,如果你知道元素的容器,你可以这样做:
var $parent_container = $("your-selector-for-the-container");
$parent_container.empty();
我认为我的方法不是正确的方法,如果有人知道更好的方法,请帮助我
我通常不是全局变量的粉丝,但在您的情况下,全局变量可能比将此信息(您的列表项)保留在DOM中更好。