【发布时间】:2014-06-17 17:07:33
【问题描述】:
我的网站被用作帮助台。顶部有几个必填字段永远不会改变。然后下面有两个下拉菜单。第一个确定第二个选项中有哪些选项,第二个确定下面可以填写的所有字段。我有这一切工作。但是,如果我在底部添加一个按钮,我不知道如何从字段中获取所有文本。底部字段使用一些 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 的怪物 switch 语句,我很难将所有输入输出。从这个角度来看,我的第一个下拉菜单有 5 个选项,而我的第二个下拉菜单平均有 6 个。所以像我的示例一样有大约 30 个 div,它们大多都是独一无二的。
【问题讨论】:
-
见jQuery .each() with input elements。你的代码应该是
var inputs = jQuery('.third_hidden:visible').find('input'); -
同时查看 jQuery.serialize() 方法。
-
@FelixKling 这与 Barmar 下面的帖子有什么不同吗?
标签: javascript jquery