如何从特定选择和下拉中获取值?

时间:2014-06-17 17:07:33

标签: javascript jquery

我的网站被用作服务台。顶部有一些永不改变的必填字段。然后下面有两个下拉菜单。第一个确定第二个选项中的选项,第二个确定下面可填写的所有字段。我这一切都有效。但是,如果我在底部添加一个按钮,我不知道如何从字段中获取所有文本。底部字段显示使用一些switch语句和JavaScript使div可见。

这是一个示例div:

 <div id="third_form_three" class="third_hidden" style="display:none;">
       <label id="company_label" class="stdFormLabel">
           Which Company:
        </label>
        <select id="company_select">
           <option value="apple">Apple</option>
           <option value="pear">Pear</option>
           <option value="banana">Banana</option>
         </select><br>
          Sales Org: <input type="text" name="sales_org" required><br>
          Sales Office: <input type="text" name="office" required><br> 
          Sales Group: <input type="text" name="group" required><br> 
          Customer Group: <input type="text" name="customer" required><br> 
          Sales District, if applicable: <input type="text" name="dist"><br> 
          <!-- ABILITY TO ATTACH A DOCUMENT -->
          <telerik:RadUpload ID="upl_cfsAttachment_four_one" ControlObjectsVisibility="None" InitialFileInputsCount="1" InputSize="40" runat="server" MaxFileInputsCount="1" required />
    </div>

我相信我的required可能是错的,但此刻我并不担心。这是我的JavaScript的开始

 function cfsButtonClick() {
            var array = [];
            var inputs = [];
            inputs.push(jQuery('.third_hidden:visible').contents().find('input'));
            inputs.each(function () {
                if (jQuery(this).val() != "")
                    array.push(jQuery(this).val());
            });
            alert(array[0]);
            alert(array.length);
        } 

有什么建议吗?我只是很难在没有编写带有所有唯一ID的怪物切换语句的情况下获得所有输入。从透视角度来看,我的第一个下拉列表有5个选项,而我的第二个下拉列表平均有6个。所以有大约30个div就像我的例子一样,它们都是独一无二的。

1 个答案:

答案 0 :(得分:0)

这一行:

inputs.push(jQuery('.third_hidden:visible').contents().find('input'));

应该是:

inputs = jQuery('.third_hidden:visible input');

您不需要.contents(),并且选择器会返回一个您可以使用.each()进行迭代的集合。

您还可以简化:

JQuery(this).val()

为:

this.value