Javascript 如何从特定的选择和下拉列表中获取值?
我的网站被用作帮助台。顶部有几个必填字段,它们永远不会更改。下面有两个下拉列表。第一个选项确定第二个选项中的选项,第二个选项确定下面可以填写的所有字段。我已经把这些都做好了。但是,如果我在底部添加一个按钮,我不知道如何从字段中获取所有文本。底部字段使用一些switch语句和JavaScript显示,使div可见 下面是一个示例div:Javascript 如何从特定的选择和下拉列表中获取值?,javascript,jquery,Javascript,Jquery,我的网站被用作帮助台。顶部有几个必填字段,它们永远不会更改。下面有两个下拉列表。第一个选项确定第二个选项中的选项,第二个选项确定下面可以填写的所有字段。我已经把这些都做好了。但是,如果我在底部添加一个按钮,我不知道如何从字段中获取所有文本。底部字段使用一些switch语句和JavaScript显示,使div可见 下面是一个示例div: <div id="third_form_three" class="third_hidden" style="display:none;">
<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>
有什么建议吗?我只是有一个艰难的时间获得所有的输入没有写一个怪物开关语句与所有的唯一id的。从这个角度来看,我的第一个下拉列表有5个选项,第二个下拉列表平均有6个选项。因此,有大约30个div与我的示例类似,它们大部分都是唯一的。这一行:
inputs.push(jQuery('.third_hidden:visible').contents().find('input'));
应该是:
inputs = jQuery('.third_hidden:visible input');
您不需要.contents()
,选择器会返回一个集合,您可以使用.each()
迭代该集合
您还可以简化:
JQuery(this).val()
致:
看见您的代码应该是
var inputs=jQuery('.third_hidden:visible')。find('input')
还检查jQuery.serialize()方法。@FelixKling这与下面Barmar的帖子有什么不同吗?调试:参数[]长度0被调用方cfsButtonClick()数组[]长度0输入对象[input property value=“a”attribute value=“null”,input property value=“b”attribute value=“null”,input property value=“c”attribute value=“null”,input property value=“d”attribute value=“null”]0 input property value=“a”attribute value=“null”1 input property value=“b”attribute value=“null”2 input property value=“c”attribute value=“null”3 input property value=“d”attribute value=“null”长度4对不起,它不允许我再打字了。我提出了你的建议,当我去调试的时候,我通过警报线得到了这个,我不确定我是否理解。您是否从某个alert()
语句中收到错误?不,抱歉。我正在调出debug来查看数组中的内容。在使用alert语句时,名为array的数组的长度为0,输入有4个元素。元素0在fire bug中表示“input property value=“a”attribute value=“null”。以下三个元素都表示相同,但b、c、D是您在输入字段中键入的,对吗?我不确定为什么array[]
没有将值输入其中。
JQuery(this).val()
this.value