<pre name="code" class="java">

jsp 中的下拉框标签:


<s:select name="sjx" id="sjx" list="sjxList" listKey="BM" listValue="MC" size="20" cssStyle="width:100%;height:70px; border:0" multiple="true"></s:select>
<pre name="code" class="html">
multiple="true"意思是支持选择多个。

js中灵活创建select标签下的项的方式:
var oSelect = $("sjx");<span style="white-space:pre">					//sjx为html或jsp页面上的select标签的id,假设使用Extjs的话,能够用EXT.getDom('sjx')获取标签
var oOption = document.createElement("OPTION"); //js中创建select标签下的OPTION子标签
oSelect.options.add(oOption);<span style="white-space:pre"> //将新建的OPTION子标签加入到select标签下
oOption.value = "001";<span style="white-space:pre"> //内容相应的value值
oOption.innerHTML ="小苹果";<span style="white-space:pre"> //显示的下拉框的内容
...以此类推
Note:js中的这样的方式。在特定的场合是比較实用的,比方:这里请求不返回特定界面。也就是不刷新整个界面。

而是採用Ajax方式的异步请求做一些局部的数据请求,那么这个时候以下strut2的方式,就会无效。

<pre name="code" class="java"><pre name="code" class="java">for(...){
HashMap<String,Object> map = new HashMap<String,Objcet>();
map.put("BM","001");
map.put("MC","小苹果");
sjxList.add(map);
}
第二种方式,也是很经常使用的:利用struts2的特性,在Action中定义一个List<Object>变量(以本例为例,命名为:sjxList)。并设置set、get方法。
通过一个 HashMap 对象,加入内容,比方: 
</pre>返回界面时,将在界面的select下拉框中显示“小苹果”。
</pre><pre code_snippet_id="487056" snippet_file_name="blog_20141017_5_1612209" name="code" class="javascript"><pre name="code" class="html">最简单的一种方式:
直接在jsp页面手动加入select标签的OPTION项
<html>
<body>
<form>
<select id="cars" name="cars">
<option value="volvo">Volvo</option>
<option value="binli">Binli</option>
<option value="mazda" selected="selected">Mazda</option>
<option value="audi">Audi</option>
</select>
</form>
</body>
</html>

删除select标签节点下全部的OPTION节点

方法一:

    function DeleteOptions()
{
var obj = document.getElementsByTagName("select")[0];
var selectOptions = obj.options;
var optionLength = selectOptions.length;
for(var i=0;i <optionLength;i++)
{
obj.removeChild(selectOptions[0]);
}
}

方法二:(那右边的Select中的全部option移到左边的Select)

    function MoveAllRightBtn(){
var columnlength=$('queryColumn').length;
var TempText;
var TempValue;
for(var i=0;i<columnlength;i++){
TempText=$('queryColumn').options[i].text;
TempValue=$('queryColumn').options[i].value;
$('queryColumn').remove(i);
$('SearchqqueryColumn').options.add(new Option(TempText,TempValue));
}
}

以上两个方法都不够好!由于它们一次性都冊除不了,由于删除了一个它的$('queryColumn')在option的序号就变了!

简单最优的方法例如以下:(仅仅需将length置0)

  1.     $('SearchqqueryColumn').options.length = 0;

    <script>
function clearOption()
{
document.getElementById("testSelect").options.length = 0;
}
</script>

(那右边的Select中的全部option移到左边的Select)实现例如以下:

function MoveAllRightBtn(){
var columnlength=$('queryColumn').options.length;
var TempText;
var TempValue;
for(var i=0;i<columnlength;i++){
TempText=$('queryColumn').options[i].text;
TempValue=$('queryColumn').options[i].value;
$('SearchqqueryColumn').options.add(new Option(TempText,TempValue));
}
$('queryColumn').options.length = 0;
}

js中创建html标签、加入select下默认的option的value和text、删除select元素节点下全部的OPTION节点的更多相关文章

  1. 在js中拼接<a>标签,<a>标签中含有onclick事件,点击无法触发该事件

    我们在<a>标签中添加事件一般是onclick="editUser()" 这样添加,在html页面上是行的通的 但是如何你是在js中拼接<a>标签并在< ...

  2. Three.js中的div标签跟随(模型弹框)

    目录 Three.js中的div标签跟随(模型弹框) 参考官方案例 核心渲染器 用法 注意事项 Three.js中的div标签跟随(模型弹框) 参考官方案例 核心渲染器 three.js-master ...

  3. springboot下html的js中使用shiro标签功能

    在js中直接使用shiro标签是不行的 比如 下面有个小技巧

  4. 【翻译】在Ext JS中创建特定主题的重写

    Ext JS提供了大量的功能来使类的创建和处理变得简单,还提供了一系列的功能来扩展和重新现有的Javascript类.这意味着可以为类添加行为和创建属于自己的类,或者重写某些函数的行为.在本文,将展示 ...

  5. js中的script标签属性

    HTML <script> 元素用于嵌入或引用可执行脚本. 在html中插入一个script标签 <script src="index.js" sync cros ...

  6. js中创建命名空间的几种写法

    在JavaScript中全局变量经常会引起命名冲突,甚至有时侯重写变量也不是按照你想像中的顺序来的,可以看看下面的例子: var sayHello = function() { return 'Hel ...

  7. JS中创建多个相同的变量出现的问题

    在做轮播图的时候出现了一个问题:如果定义两个完全相同的变量会发生什么: 1.两个全局变量: var num = 10; var num =100; 这种情况下很明显输出num的话会是100,但是内存中 ...

  8. 在js中创建命名空间的几种写法

    在JavaScript中全局变量经常会引起命名冲突,甚至有时侯重写变量也不是按照你想像中的顺序来的,可以看看下面的例子:   var sayHello = function() { return 'H ...

  9. 在html中创建自定义标签

    创建并使用自定义标签 Web Components 标准非常重要的一个特性是,它使开发者能够将HTML页面的功能封装为 custom elements(自定义标签),本篇介绍使用 CustomElem ...

随机推荐

  1. 学习笔记7——wp版本更新需要注意的问题

    平时开发时应该避免修改wp的核心代码, 因为在升级wp版本时,核心代码都会被覆盖, wp升级时只有wp-content文件夹不会被覆盖.

  2. x86保护模式 实模式与保护模式切换实例

    x86保护模式     实模式与保护模式切换实例 实例一 逻辑功能   以十六进制数的形式显示从内存地址110000h开始的256个字节的值    实现步骤: 1  切换保护方式的准备 2. 切换到保 ...

  3. Manthan, Codefest 17

    A. Tom Riddle's Diary time limit per test 2 seconds memory limit per test 256 megabytes input standa ...

  4. nginx,lvs,haproxy负载均衡对比

    Nginx/LVS/HAProxy是目前使用最广泛的三种负载均衡软件,一般对负载均衡的使用是随着网站规模的提升根据不同的阶段来使用不同的技术,具体的应用需求还得具体分析. 如果是中小型的Web应用,比 ...

  5. 【Luogu】P2617Dynamic Ranking(树状数组套主席树)

    题目链接 树状数组套主席树有点难懂qwq 不好理解 树状数组套主席树的直观理解应该是:树状数组的每一个节点是一棵主席树. 普通区间修改我们是创建1个线段树,树状数组套主席树的时候我们就创建log个线段 ...

  6. 【CCF】棋局评估

    博弈论极小极大搜索,记忆化+状压 #include<iostream> #include<cstdio> #include<string> #include< ...

  7. BZOJ 4808 马 二分图最大独立集

    题目应该就是最大独立集了吧,没什么了,平面图求最大独立集需要/2的, WQH说加直接+双向边考研过,结果真的过了,应该是匈牙利算法寻找的 时候更加快了吧.(方便找边) #include<cstd ...

  8. cf725F Family Photos

    Alice and Bonnie are sisters, but they don't like each other very much. So when some old family phot ...

  9. 将SSM架构中原来关于springSecurity3.x版本的写法配迁移到SpringBoot2.0框架中出现的问题解决记

    迁移过程中关于这个安全框架的问题很麻烦,springBoot自带的stater中的版本是5.0,原来系统有通过实现"org.springframework.security.authenti ...

  10. POJ3132 Sum of Different Primes

    Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 3473   Accepted: 2154 Description A pos ...