1. js實現select選中option觸發事件操作示例
本文實例講述了JS實現select選中option觸發事件操作。分享給大家供大家參考,具體如下:
我們在用到下拉列表框select時,需要對選中的<option>選項觸發事件,其實<option>本身沒有觸發事件方法,我們只有在select里的onchange方法里觸發。
想添加一個option的觸發事件,在option中添加onclick 點來點去就是不會觸發事件
又在select中添加onclick 這下可好了,沒選option呢就觸發了
網路來的說option沒有觸發事件,需要在select中加onchange事件,雖然我曾經處理過類似的問題,用過就忘是不是豬腦子.
這次記住了吧應該
當我們觸發select的雙擊事件時,用ondblclick方法。
當我們要取得select的選中事件時,用document.all['name'].value來獲取,其中name是select的名稱。
如果我們要得到select的全部的值就用一個for循環來實現。代碼如下:
var vi = document.all['list'].length;for(var i=0;i<vi;i++){ document.form2.list(i).value; //form2是<form>的名稱}
JS實現代碼:
<select id="pid" onchange="gradeChange()"> <option grade="1" value="a">選項一</a> <option grade="2" value="b">選項二</a></select><script type="text/javaScript"> function gradeChange(){ var objS = document.getElementById("pid"); var grade = objS.options[objS.selectedIndex].grade; alert(grade); }</script>
jQuery實現代碼:
<select name="myselect" id="myselect"> <option value="opt1">選項1</option> <option value="opt2">選項2</option> <option value="opt3">選項3</option></select>$("#myselect").change(function(){ var opt=$("#myselect").val(); .});
Javascript獲取select下拉框選中的值
現在有一id=test的下拉框,怎麼拿到選中的那個值呢?
分別使用javascript原生的方法和jquery方法
<select id="test" name=""> <option value="1">text1</option> <option value="2">text2</option></select>
代碼:
一、javascript原生的方法
1. 拿到select對象:
var myselect=document.getElementById("test");
2. 拿到選中項的索引:
var index=myselect.selectedIndex;// selectedIndex代表的是你所選中項的index
3. 拿到選中項options的value:
myselect.options[index].value;
4:拿到選中項options的text:
myselect.options[index].text;
二、jquery方法(前提是已經載入了jquery庫)
1.獲取選中的項
var options=$("#test option:selected");
2.拿到選中項的值
alert(options.val());
3.拿到選中項的文本alert(options.text());
2. 用JS來實現select選中值後使其他select為disabled
簡單的寫了一段代碼,不限於個,可以是更多個select
<select id="a" onclick="javascript:doit(this);"><option value="請選擇">請選擇</option><option value="a">a</a></select>
<select id="b" onclick="javascript:doit(this);"><option value="請選擇">請選擇</option><option value="b">b</a></select>
<select id="c" onclick="javascript:doit(this);"><option value="請選擇">請選擇</option><option value="c">c</a></select>
<script type="text/javascript">
function doit(o){
var ss=document.getElementsByTagName("select");
if(o.options[o.selectedIndex].value=='請選擇'){
for(var i=0;i<ss.length;i++){
ss[i].disabled=false;
}
}else{
for(var i=0;i<ss.length;i++){
if(ss[i]!=o) ss[i].disabled=true;
}
}
}
</script>
3. 怎麼用js動態 設置select中的某個值為選中值
用JS動態設置select的方法如下:
手動通過原生JS來實現:
/**
* 設置select控制項選中
* @param selectId select的id值
* @param checkValue 選中option的值
*/
function set_select_checked(selectId, checkValue){
var select = document.getElementById(selectId);
for (var i = 0; i < select.options.length; i++){
if (select.options[i].value == checkValue){
select.options[i].selected = true;
break; } } }
然後通過這樣來調用:
// 設置select選中該班組
set_select_checked('edit-group', group_id);
注意:不要傳'#edit-group'。
(3)javascript模擬select擴展閱讀
js動態設置Select中Option選中
/** *設置select選中
*@paramselectIdselect的id值
*@paramcheckValue選中option的值
*@authorlqy */
functionsetSelectChecked(selectId,checkValue){
varselect=document.getElementById(selectId);
for(vari=0;i<select.options.length;i++){
if(select.options[i].innerHTML==checkValue){
select.options[i].selected=true;
break; } } };
4. 怎樣用js取得select下拉列表框內選中的option的value值呢
單選下拉列表框對象的value屬性值就是選中項的value值,因此只需用如下代碼即可
var selected_val = document.getElementById(select_id).value;
並且,通過操作select下的option也可以得到被選項的value值,方法為:
var sel = document.getElementById(select_id);
var selected_val = sel.options[sel.selectedIndex].value;