hello

使用JS获得文本框,下拉框,单选框的值

1.文本框

1.1 <input type="text" name="test" id="test">

通过var t=document.getElementById("test").value把值赋给变量t,

1.2 当然也可以反过来把已知的变量值赋给文本框,例如:

var m = "5";

document.getElementById("test").value= m;

 

2.下拉列表框

2.1 <select name="sel" id="sel" onchange="look();">

<option value="1" >11</option>

<option value="2" selected>22</option>

<option value="3">33</option>

</select>

通过var s=document.getElementById("sel").value获取<select>框中选中的值,此处默认选中value="2"的选项,所以赋给变量s 的值是"2",而不是"22",

假如要把<select>中选择的"值"如"3"对应的"文本值"("33")赋给test文本框,可以通过如下方法,

<script language="javascript">

function look(){

      var se =document.getElementById("sel");   
                 var option=se.getElementsByTagName("option");   
                 var str = "" ;   
                 for(var i=0;i<option.length;++i)   
                 {   
                 if(options[i].selected)   
                 {   
                 document.getElementById("test").value = option[i].text;   
                 }   
                 }  

 

 

}

</script>

2.2 将给定的值与<select>框中的值进行比较,如果<select>中的<option>的value值与给定的值相同,则选中它。

var m = "2",

for(var i = 0;i<document.getElementById("sel").length;i++)
         { 
          with(document.getElementById("sel").options[i])
                 { 
                 if(value == m)
                 {
                 selected = true;
                 }
                 }
         }

 

3.单选框

一排单选框的name属性值必须相同,这样才可以实现单选。

<INPUT TYPE="radio" NAME="a" value="1">aaaaaaaaaa<br>
<INPUT TYPE="radio" NAME="a" value="2">bbbbbbbbb<br>
<INPUT TYPE="button" onclick="check();" value="test">
<script LANGUAGE="javascript">
<!--
function check()
{
var sel = 0;
for (var i = 0; i < document.getElementsByName("a").length; i++)
 {
     if(document.getElementsByName("a")[i].checked)
      {
        sel = document.getElementsByName("a")[i].value;
     }
 }

   if(sel == 1)
    {
      alert("aaaaaaaaaa");
      }
   else if(sel== 2)
   {
       alert("bbbbbbbbb");
    }
}
//-->
</script>

 

Js获取下拉框选定项的值和文本

Firefox和IE下获取下拉框选定项的值和文本:

  1. IE和Firefox都支持的方法:

获取文本

var obj=document.getElementById('select_template');

var text=obj.options[obj.selectedIndex].text;//获取文本

 

var obj=document.getElementById("select_template");

        for(i=0;i<obj.length;i++) {//下拉框的长度就是他的选项数

           if(obj[i].selected==true) {

            var text=obj[i].text;//获取文本

        }

}

二者相比上一个方法比较简洁

 

 

  1. IE支持Firefox不支持:

var obj=document.getElementById(name);

for(i=0;i<obj.length;i++)  {
        if(obj[i].selected==true) {
           var text= obj[i].innerText;     
        }
    }

获取值方法IE和Firefox通用:

var value=document.getElementById("select_template").value;//获取值

 

总结:其实主要就是IE和Firefox都支持value和text属性,Firefox不支持innerText属性。

 

Js实现当前页打开一个新链接:

window.location.href=url;

 

 

 

posted @ 2012-04-27 14:35  B追风少年  阅读(2983)  评论(0编辑  收藏  举报

hello too