js添加select下默认的option的value和text的方法
<prename="code"class="java">
jsp中的下拉框标签:
<s:selectname="sjx"id="sjx"list="sjxList"listKey="BM"listValue="MC"size="20"cssStyle="width:100%;height:70px;border:0"multiple="true"></s:select>
<prename="code"class="html"> multiple="true"意思是支持选择多个。 </pre><precode_snippet_id="487056"snippet_file_name="blog_20141017_5_1612209"name="code"class="javascript">
js中灵活创建select标签下的项的方式:
<prename="code"class="javascript">varoSelect=$("sjx");<spanstyle="white-space:pre"></span>//sjx为html或jsp页面上的select标签的id,如果使用Extjs的话,可以用EXT.getDom('sjx')获取标签 varoOption=document.createElement("OPTION");<spanstyle="white-space:pre"></span>//js中创建select标签下的OPTION子标签 oSelect.options.add(oOption);<spanstyle="white-space:pre"></span>//将新建的OPTION子标签添加到select标签下 oOption.value="001";<spanstyle="white-space:pre"></span>//内容对应的value值 oOption.innerHTML="小苹果";<spanstyle="white-space:pre"></span>//显示的下拉框的内容 ...以此类推
Note:js中的这种方式,在特定的场合是比较有用的,比如:这里请求不返回特定界面,也就是不刷新整个界面。而是采用Ajax方式的异步请求做一些局部的数据请求,那么这个时候下面strut2的方式,就会无效。
<prename="code"class="java"><prename="code"class="java">for(...){ HashMap<String,Object>map=newHashMap<String,Objcet>(); map.put("BM","001"); map.put("MC","小苹果"); sjxList.add(map); }
另外一种方式,也是非常常用的:利用struts2的特性,在Action中定义一个List<Object>变量(以本例为例,命名为:sjxList),并设置set、get方法。
通过一个HashMap对象,添加内容,比如:
</pre>返回界面时,将在界面的select下拉框中显示“小苹果”。
<prename="code"class="html">最简单的一种方式: 直接在jsp页面手动添加select标签的OPTION项 <html> <body> <form> <selectid="cars"name="cars"> <optionvalue="volvo">Volvo</option> <optionvalue="binli">Binli</option> <optionvalue="mazda"selected="selected">Mazda</option> <optionvalue="audi">Audi</option> </select> </form> </body> </html>