【发布时间】:2014-06-10 18:24:16
【问题描述】:
我正在使用 Servlet 和 JSP。我有一个 JSP 表单,其中有一个与 id's 关联的下拉列表,到目前为止,我在下拉列表中有三个选项。
HTML 代码--
<form id='form' method='post' action='/test/'>
<select id="type" name="typeOne">
<optgroup id="first" name="First" label="FirstDiv">
<option value="value1" id="001">valuee1 count</option>
<option value="value2" id="002">value2</option>
<option value="value3" id="003">value3
</option>
</optgroup>
</select>
</form>
现在我需要使用 jquery 禁用上面下拉列表中的一些选项。下面是我的 jquery,我在其中禁用了 option 以及从我的 servlet 获得的 id's 列表。
Store 是我从 servlet 传递的值,是 List-
JQuery 代码--
<script>
$(document).ready(function () {
$(function () {
alert(<%=request.getAttribute("store") %>);
$(<%=request.getAttribute("store") %>).prop("disabled", true);
});
});
</script>
alert 将值返回为 null
下面是我的 servlet,我从中传递了一个列表,该列表将包含我想要在下拉列表中禁用的所有 id。
Servlet 代码--
List<String> storeTest = new ArrayList<String>();
storeTest.add("001");
storeTest.add("002");
req.setAttribute("store",StringUtils.join(mapForId(storeTest).toArray(),","));
this.getServletContext().getRequestDispatcher( "/myPage.jsp" ).forward( req, response );
问题陈述:-
现在我的问题是 - 在我的 JSP 页面中,下拉菜单中的选项在通过后不会被禁用。谁能纠正我我做错了什么。
更新-
mapForId() 方法-
List<String> mapForId(List<String> l){
List<String> newArr=new ArrayList<String>();
for(Object attr : l){
newArr.add("option#" + attr);
}
return newArr;
}
【问题讨论】:
标签: java javascript jquery jsp servlets