我有3个下拉选择输入和一个textarea输入。我认为使所有名称都相同是无效的,因此,每个输入都有不同的名称,尽管我可以使它们都以相同的字符串开头。 在表单提交上,我想将所有输入值合并为一个。 我只能想出一个隐藏的输入来收集价值,但我不知道如何编码。请帮忙!
<ul>
<li>
<select id="input-first_dropdown" name="property-first_dropdown">
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
</select>
</li>
<li>
<select id="input-second_dropdown" name="property-second_dropdown">
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
</select>
</li>
<li>
<textarea id="input-textarea" name="property-textarea">test</textarea>
</li>
</ul>
答案 0 :(得分:1)
您可以为不同的输入字段(但不是相同的name
值)使用相同的id
属性值。然后将提交数据,以便有多个具有相同名称的名称=值对。是否以及如何处理服务器端是另一回事。通常,使用不同的名称更容易。在服务器端处理中,您可以根据需要组合数据。
您无法在“表单提交”(即客户端)上可靠地组合输入字段。虽然在JavaScript中很容易做到这一点,但是没有必要,因为你不应该依赖于在浏览器中启用JavaScript。
答案 1 :(得分:0)
<ul>
<li>
<select id="input-first_dropdown" name="property[]">
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
</select>
</li>
<li>
<select id="input-second_dropdown" name="property[]">
<option>Option 1</option>
<option>Option 2</option>
<option>Option 3</option>
</select>
</li>
<li>
<textarea id="input-textarea" name="property[]">test</textarea>
</li>
</ul>
在您的表单处理器中尝试print_r($_POST['property'])