123, "idPri"-6ren">
gpt4 book ai didi

javascript - 如何获取与数组具有相同名称标签的所有输入字段(jQuery)

转载 作者:行者123 更新时间:2023-11-30 19:27:07 25 4
gpt4 key购买 nike

是否可以获取所有与数组具有相同名称标签的输入字段,并使用方括号中的字符串作为键?示例:

<input type="hidden" name="hidden[idPub]" disabled="disabled">
<input type="hidden" name="hidden[idPri]" disabled="disabled">
<textarea name="hidden[description]" style="height:75px;length:auto;display:block;" class="form-control" >'</textarea>

结果应该是这样的:

hidden => 
"idPub" => 123,
"idPri" => 321,
"description" => 'test'

我的实际解决方案:

var formData = [];
$("input[name^='hidden[']").each(function()
{
formData[$(this).attr('name').replace('hidden[','').replace(']', '')] = $(this).val();
});

提前致谢。

最佳答案

因为您使用的是命名键,formData应该是一个对象,而不是一个数组。

var formData = {};
// ^^

此外,您的选择器仅针对 <input>要素;您需要为 <textarea> 添加一个选择器

$("input[name^='hidden['],textarea[name^='hidden[']")
// ^^^^^^^^^^^^^^^^^^^^^^^^^^

var formData = {};
$("input[name^='hidden['],textarea[name^='hidden[']").each(function() {
formData[$(this).attr('name').replace('hidden[', '').replace(']', '')] = $(this).val();
});

console.log(formData);
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="hidden" name="hidden[idPub]" value="123">
<input type="hidden" name="hidden[idPri]" value="321">
<textarea name="hidden[description]">test</textarea>

关于javascript - 如何获取与数组具有相同名称标签的所有输入字段(jQuery),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56793693/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com