首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何让select数组为空

如何让select数组为空
EN

Stack Overflow用户
提问于 2013-11-27 02:47:06
回答 4查看 274关注 0票数 1

我的select option属性的名称是动态填充的。

在提交我的表格时,我需要知道我所有的forams是否都选择了已填...

我该怎么做呢?

我还想将鼠标光标移动到未填充的select。

代码语言:javascript
复制
 <script type="text/javascript" src="js/jquery-1.6.4.js"></script>
    <script type="text/javascript">
        $(document).ready(function () {
            $("#teste").click(function () {


                a = $("select[name='sel[]'] option:selected").length;

                alert(a);

            });
        });
    </script>
<title>
</title>
</head>

    <form>
        <select name="sel[0]">
            <option value="teste"></option>
            <option value="teste">1234</option>
            <option value="teste">1234</option>
            <option value="teste">1234</option>
        </select>
        <br />
        <br />
        <br />
        <select name="sel[1]">
            <option value="teste"></option>
            <option value="teste">1234</option>
            <option value="teste">1234</option>
            <option value="teste">1234</option>
        </select>

        ... Many others 
        <input type="button" id="teste" value="TESTAR">
    </form>

</html>
EN

回答 4

Stack Overflow用户

发布于 2013-11-27 02:52:50

您必须像这样设置变量var a;

没有带有select[name='sel[]']的元素,您可以使用name*=name^=分别表示name contains或name starts with sel

代码语言:javascript
复制
$("#teste").click(function () {
    var a = $("select[name^='sel'] option:selected");
    var count = 0;
    $.each(a, function () {
        if ($(this).text().length) {
            count++;
        }
    });
    alert(count);
});
票数 1
EN

Stack Overflow用户

发布于 2013-11-27 03:05:38

将默认选项的值设为-1,并为这些选项提供一个通用的类名(这是以选择器开头的属性的效率)。

尝试:

HTML:

代码语言:javascript
复制
<form>
    <select name="sel[0]" class="sel">
        <option value="-1"></option>
        <option value="teste">1234</option>
        <option value="teste">1234</option>
        <option value="teste">1234</option>
    </select>
    <br />
    <br />
    <br />
    <select name="sel[1]" class="sel">
        <option value="-1"></option>
        <option value="teste">1234</option>
        <option value="teste">1234</option>
        <option value="teste">1234</option>
    </select>
    <input type="button" id="teste" value="TESTAR">

JS:

代码语言:javascript
复制
$(document).ready(function () {
      $("#teste").click(function () {
          $(".sel").each(function () {
              if (this.value == -1) { //If you are not providing value check for this.selectedIndex == 0
                  $(this).focus(); //set the focus
                  return false; //and break out of the loop
             }
          });
      });
  });
票数 1
EN

Stack Overflow用户

发布于 2013-11-27 02:58:40

在提交表单时,Select的作用类似于通常的输入。因此,您可以查找值为空的selects:

代码语言:javascript
复制
$("select[value=]").first().focus()

或者遍历所有表单元素,检查它的值和类型。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20225407

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档