js中创建html标签、加入select下默认的option的value和text、删除select元素节点下全部的OPTION节点
<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)
$('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节点的更多相关文章
- 在js中拼接<a>标签,<a>标签中含有onclick事件,点击无法触发该事件
我们在<a>标签中添加事件一般是onclick="editUser()" 这样添加,在html页面上是行的通的 但是如何你是在js中拼接<a>标签并在< ...
- Three.js中的div标签跟随(模型弹框)
目录 Three.js中的div标签跟随(模型弹框) 参考官方案例 核心渲染器 用法 注意事项 Three.js中的div标签跟随(模型弹框) 参考官方案例 核心渲染器 three.js-master ...
- springboot下html的js中使用shiro标签功能
在js中直接使用shiro标签是不行的 比如 下面有个小技巧
- 【翻译】在Ext JS中创建特定主题的重写
Ext JS提供了大量的功能来使类的创建和处理变得简单,还提供了一系列的功能来扩展和重新现有的Javascript类.这意味着可以为类添加行为和创建属于自己的类,或者重写某些函数的行为.在本文,将展示 ...
- js中的script标签属性
HTML <script> 元素用于嵌入或引用可执行脚本. 在html中插入一个script标签 <script src="index.js" sync cros ...
- js中创建命名空间的几种写法
在JavaScript中全局变量经常会引起命名冲突,甚至有时侯重写变量也不是按照你想像中的顺序来的,可以看看下面的例子: var sayHello = function() { return 'Hel ...
- JS中创建多个相同的变量出现的问题
在做轮播图的时候出现了一个问题:如果定义两个完全相同的变量会发生什么: 1.两个全局变量: var num = 10; var num =100; 这种情况下很明显输出num的话会是100,但是内存中 ...
- 在js中创建命名空间的几种写法
在JavaScript中全局变量经常会引起命名冲突,甚至有时侯重写变量也不是按照你想像中的顺序来的,可以看看下面的例子: var sayHello = function() { return 'H ...
- 在html中创建自定义标签
创建并使用自定义标签 Web Components 标准非常重要的一个特性是,它使开发者能够将HTML页面的功能封装为 custom elements(自定义标签),本篇介绍使用 CustomElem ...
随机推荐
- 基于顺序链表的栈的顺序存储的C风格实现
头文件: #ifndef _SEQSTACK_H_ #define _SEQSTACK_H_ typedef void SeqStack; //创建一个栈 SeqStack* SeqStack_Cre ...
- cs229_part6
part 6 接下来就是无监督学习算法了. k均值聚类 问题背景 样本集描述: \[ x\in D, x\in R^n \] 之前的有监督学习问题中,所有的x都有对应的y.但是如果我们的x没有对应的y ...
- Java-确定被加载类的路径
如何输出当前类在硬盘的物理路径 package com.tj; import java.net.URL; import java.security.CodeSource; import java.se ...
- 自己项目使用了ARC,项目中使用第三方库继续引用ARC
Objective-C引入ARC(Automatic Reference Counting)后,我们经常会面对这样一种困境:自己的项目使用了ARC,却发现要使用的第三方类库是non-ARC的:又或者自 ...
- swift final关键字、?、!可选与非可选符
?符号: 可选型 在初始化时可以赋值为nil !符号: 隐形可选型 类型值不能为nil,如果解包后的可选类型为nil会报运行时错误,主要用在一个变量/常量在定义瞬间完成之后值一定会存在的情况.这主要 ...
- c++ string char* 获取输入值的区别
#include <iostream> #include <string> using namespace std; void reverseStr(string &s ...
- php排序介绍_冒泡排序_选择排序法_插入排序法_快速排序法
这里我们介绍一些常用的排序方法,排序是一个程序员的基本功,所谓排序就是对一组数据,按照某个顺序排列的过程. 充效率看 冒泡排序法<选择排序法<插入排序法 排序分两大类: 内部排序法 交换式 ...
- iOS学习笔记17-FMDB
上一节我已经介绍了SQLite的简单使用,不了解的可以提前去看一下iOS学习笔记16-数据库SQLite,这节我们来讲下FMDB. 一.FMDB介绍 FMDB是一种第三方的开源库,FMDB就是对SQL ...
- 【THUSC2016】成绩单(bzoj4897)
$f(i,j,x,y)$ 表示区间 $[i,j]$中,第 $j$ 个数在最后一次操作中才消去,最后一次操作的最大值为 $x$,最小值为 $y$ 时的最小代价: $g(i,j)$ 表示区间 $[i,j] ...
- POJ3744 Scout YYF I (矩阵优化的概率DP)
Scout YYF I YYF is a couragous scout. Now he is on a dangerous mission which is to penetrate into th ...