通过js来获取select的全部值

通过js来获取select的全部值,第1张

<select name=n1 id=n1>

<option value='1'>项目1</option>

<option value='2'>项目2</option>

<option value='3'>项目3</option>

<option value='4'>项目4</option>

<option value='5'>项目5</option>

</select>

<input type="button" value="提交" onclick="abc()" class="button1" style="width:80px;">

<script>

function abc()

{

var sel = documentgetElementById('n1');

for (var i=0;i<sellength;i++)

{

alert(sel(i)text+"的值是"+sel(i)value);

}

}

</script>

手工调试过保证正确给个好评哦

html:

<select

id="sel">

<option

value='s1'>苹果</option>

<option

value='s2'>西瓜</option>

<option

value='s3'>香蕉</option>

</select>

javascript:

$(function(){

var

_val

=

$map(

$("#sel

option:not(:selected)"),

function(ele){return

elevalue}

)join(",");

alert(_val);

})

其中主要的是:$("#sel

option:not(:selected)"),这是返回没被选中的option集合,

使用$map函数对这个集合进行处理,取出其中元素的值,使用","进行分隔。

如果option中没有value属性,那么直接返回option的文本内容。

<script type="text/javascript">

  // 获取指定form中的所有的<input><select>对象

  function getElements(formId) {

      var form = documentgetElementById(formId);

      if(form == null){

          return false;

      }

      var elements = new Array();

      var inputTagElements = formgetElementsByTagName('input');

      for (var j = 0; j < inputTagElementslength; j++) {

          elementspush(inputTagElements[j]);

      }

      var selectTagElements = formgetElementsByTagName('select');

      for (var j = 0; j < selectTagElementslength; j++) {

          elementspush(selectTagElements[j]); 

      }

      return elements;

  }

扩展资料:

form表单提交

在form标签中添加Action(提交的地址)和method(post),且有一个submit按钮。

(<input type='submit'>)就可以进行数据的提交,每一个input标签都需要有一个name属性,才能进行提交。

当点击登陆时,向数据库发生的数据是:username=username&password=password

这种默认的提交方式,一般会进行页面的跳转(不成功时跳转到当前页面)。而有时候是对d出框进行数据提交的,希望提交成功则关闭d出框并刷选父页面,失败则提示失败原因,且d出框不关闭。此时可以采用Ajax进行数据提交。

如果select标签是有id属性的,如

<select id=xx>

则用下述方法获取当前选项的值:

var v = xxvalue;

var v = documentgetElementById("xx")value; //此方法兼容性好

如果select标签是有name属性的,如

<form name=form1>

<select name=xx>

则用下述方法获取当前选项的值:

var v = form1xxvalue;

var v = documentgetElementsByName("xx")[0]value;

如果同一页面含有多个name属性相同的标签,则上述[0]中的数字要改为相应的物理顺序号(从0起算)

如果select标签不含有任何可供定位的属性,如

<select>

则用下述方法获取当前选项的值:

var v = documentgetElementsByTagName("select")[0]value;

如果同一页面含有多个select标签,则上述[0]中的数字要改为相应的物理顺序号(从0起算)

现在有一id=test的下拉框,怎么拿到选中的那个值呢?

分别使用javascript原生的方法和jquery方法

<select id="test"  name="">   

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

  <option   value="2">text2</option>   

 </select>

code:

一:javascript原生的方法

  1:拿到select对象: var  myselect=documentgetElementById("test");

  2:拿到选中项的索引:var index=myselectselectedIndex ;             // selectedIndex代表的是你所选中项的index

  3:拿到选中项options的value:  myselectoptions[index]value;

  4:拿到选中项options的text:  myselectoptions[index]text;

二:jquery方法(前提是已经加载了jquery库)

1:var options=$("#test option:selected");  //获取选中的项

2:alert(optionsval());   //拿到选中项的值

3:alert(optionstext());   //拿到选中项的文本

试一下这个把,我刚才试过了,可以的

var tt=$("form select[name=selectName]")find('option:selected')text();

alert(tt);

把selectName换成你表单中的下拉框name值就行了

要是使用ID查询这样就行了

var tt=$("#selectId")find('option:selected')text();就行

jquery获取select选择的文本与值

获取select :

获取select 选中的 text :

    $("#ddlregtype")find("option:selected")text();

获取select选中的 value:

    $("#ddlregtype

 ")val();

获取select选中的索引:

    $("#ddlregtype

 ")get(0)selectedindex;

设置select:

设置select 选中的索引:

    $("#ddlregtype

 ")get(0)selectedindex=index;//index为索引值

设置select 选中的value:

    $("#ddlregtype

 ")attr("value","normal“);

    $("#ddlregtype

 ")val("normal");

    $("#ddlregtype

 ")get(0)value = value;

设置select 选中的text:

    var

 count=$("#ddlregtype option")length;

      for(var

 i=0;i<count;i++)

         {           if($("#ddlregtype

 ")get(0)options[i]text == text)

            {

                $("#ddlregtype

 ")get(0)options[i]selected = true;

                break;

            }

        }

    $("#select_id

 option[text='jquery']")attr("selected", true);

设置select option项:

    $("#select_id")append("<option

 value='value'>text</option>");  //添加一项option

    $("#select_id")prepend("<option

 value='0'>请选择</option>"); //在前面插入一项option

    $("#select_id

 option:last")remove(); //删除索引值最大的option

    $("#select_id

 option[index='0']")remove();//删除索引值为0的option

    $("#select_id

 option[value='3']")remove(); //删除值为3的option

    $("#select_id

 option[text='4']")remove(); //删除text值为4的option

清空 select:

    $("#ddlregtype

 ")empty();

工作需要,要获得两个表单中的值。如图:

如何获得从左边选择框添加到右边选择框中的值?我想了想用网页特效可以获得,这里用了比较流行的jquery。

js代码如下:

    //获取所有属性值

 var item = $("#select1")val();

    $(function(){

      $('#select1')each(  //获得select1的所有值

         function(){

            $('button')click(function(){

                alert($('#select2')val());  //获得select2中的select1值

            });

         });

    })

    </script>

值得注意的是,不能直接写成

    $(function(){

      $('#select2')each(  //获得select1的所有值,因为前面讲选项从左边添加到右边,jquery其实并没有真正将值从左边传到右边。

         function(){

            $('button')click(function(){

                alert($(this)val());  //获得select2中的select1值

            });

         });

    })

html:

    <div

 class="centent">

            <select

 multiple="multiple" id="select1" name="dd" style="width:100px;height:160px;">

                <option

 value="1">选项1</option>

                <option

 value="2">选项2</option>

                <option

 value="3">选项3</option>

                <option

 value="4">选项4</option>

                <option

 value="5">选项5</option>

                <option

 value="6">选项6</option>

                <option

 value="7">选项7</option>

            </select>

            <div>

                <span

 id="add" >选中添加到右边&gt;&gt;</span>

                <span

 id="add_all" >全部添加到右边&gt;&gt;</span>

            </div>

        </div>

        <div

 class="centent">

            <select

 multiple="multiple" id="select2" name="sel" style="width: 100px;height:160px;">

            </select>

            <div>

                <span

 id="remove">&lt;&lt;选中删除到左边</span>

                <span

 id="remove_all">&lt;&lt;全部删除到左边</span>

            </div>

        </div>

使用JQuery,Ajax调用动态填充Select的option选项

    //绑定ClassLevel1单击事件

        $("#ClassLevel1")change(function

 () {

            var

 id = $("#ClassLevel1")val();

            var

 level2 = $("#ClassLevel2");

            level2empty();

            $("#ClassLevel3")hide();

            $ajax({

                url:

 "/askCommonashxaction=getclasslevel&pid=" + id,

                data:

 { "type": "ajax" },

                datatype:

 "json",

                type:

 "get",

                success:

 function (data) {

                    var

 json = eval_r(data);

                    for

 (var ind in json) {

                        level2append($("<option

 value='" + json[ind]id + "'>" + json[ind]typename + "</option>"));

                    }

    

                }

            });

        }

以上就是关于通过js来获取select的全部值全部的内容,包括:通过js来获取select的全部值、js或者jquery如何获取select中未选中的值急求、js怎么获取form表单中所有的input和select等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/10057936.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存