我们在用到下拉列表框select时,需要对选中的
选项触发事件,其实本身没有触发事件方法,我们只有在select里的onchange方法里触发。
当我们触发select的双击事件时,用ondblclick方法。
当我们要取得select的选中事件时,用document.all['name'].value来获取,其中name是select的名称。
如果我们要得到select的全部的值就用一个for循环来实现。代码如下:
var vi = document.all['list'].length;
for(var i=0;i
document.form2.list(i).value; //form2是的名称
}
下面介绍一个特殊情况的解决,由于option本身没有事件,所以我们不能给每个option都添加一个onclick事件。如果需要实现点击不同的option,实现不同的函数时,要怎么办,从value里取值在分析是一种办法,但如果value里的值不确定,我们又不想从value里取值怎么办呢?可以这样解决,给每个option添加一个属性,然后在赋一个值,我们在函数里取到这个属性的值就可以判断执行了。
---------------------------------------------------------------------------------------------
-------------------------------------------------源代码------------------------------------
选项一
选项二
function gradeChange(){
var objS = document.getElementByIdx_x("pid");
var grade =objS.options[objS.selectedIndex].grade;
alert(grade);
}
================jquery=========
1、获取选中select的value和text,html代码如下:
<select id="mySelect"><option value="1">one</option><option value="2">two</option><option value="3">three</option></select>
则可通过以下script代码s来获取选中的value和text
$("#mySelect").val();//获取选中记录的value值$("#mySelect option:selected").text();//获取选中记录的text值
2、运用new Option("文本","值")方法添加选项option
var obj=document.getElementByIdx_x_x("mySelect");obj.add(newOption("4","4"));
3、删除所有选项option
var obj=document.getElementByIdx_x_x("mySelect");obj.options.length=0;
4、删除选中选项option
varobj=document.getElementByIdx_x_x("mySelect");varindex=obj.selectedIndex;obj.options.remove(index);
5、修改选中选项option
varobj=document.getElementByIdx_x_x("mySelect");varindex=obj.selectedIndex;obj.options[index]=newOption("three",3);//更改对应的值obj.options[index].selected=true;//保持选中状态
6、删除select
varobj=document.getElementByIdx_x_x("mySelect");obj.parentNode.removeChild(obj);//移除当前对象
7、select选择的响应事件
$("#mySelect").change(function(){//添加所需要执行的操作代码})