提交时删除某些表单字段

时间:2014-10-19 03:57:50

标签: jquery

当我的ajax表单提交时,我会有一些选择菜单,提交的值为“0” 我想从提交中删除这些选择以及它的配对输入(包含id)。

我不确定如何实现这一目标。

以下是html源代码的示例。这个样本中只有3个,但可能会有更多或更少。

<select id="customer_orders_attributes_0_quantity" name="customer[orders_attributes][0][quantity]">
  <option value="0">0</option>
  <option value="1">1</option>
</select>
<input id="customer_orders_attributes_0_product_id" name="customer[orders_attributes][0][product_id]" type="hidden" value="917">

<select id="customer_orders_attributes_1_quantity" name="customer[orders_attributes][1][quantity]">
  <option value="0">0</option>
  <option value="1">1</option>
</select>
<input id="customer_orders_attributes_1_product_id" name="customer[orders_attributes][1][product_id]" type="hidden" value="918">

<select id="customer_orders_attributes_2_quantity" name="customer[orders_attributes][2][quantity]">
  <option value="0">0</option>
  <option value="1">1</option>
</select>
<input id="customer_orders_attributes_2_product_id" name="customer[orders_attributes][2][product_id]" type="hidden" value="919">

所以如果customer_orders_attributes_0_quantity和customer_orders_attributes_2_quantity碰巧是0 - 我怎么能告诉它在表单提交之前删除它以及匹配的_product_id输入。

谢谢

1 个答案:

答案 0 :(得分:0)

//remove inputs following any select lists with option 0 selected
$('option[value="0"]:selected').parent().next('input').remove();

//remove select lists with option 0 selected
$('option[value="0"]:selected').parent().remove();