[英]multiple form submission with one submit
我一直在努力思考並找出是否可能。 我正在使用zen-cart作為購物車軟件,但我想做的是硬編碼一個頁面,該頁面基本上是7-9產品的列表,每個產品旁邊都是一個復選框,所以我想找出一種方法,通過html,javascript或jquery將檢查的任何表單(產品)提交到購物車。 產品的典型表單提交如下所示(有時可能會有一個或兩個其他隱藏字段):
<form name="cart_quantity" action="index.php?action=add_product" method="post" enctype="multipart/form-data">
<input type="hidden" name="cart_quantity" value="1">
<input type="hidden" name="products_id" value="7">
<input type="hidden" name="id[6]" value="9" id="attrib-6-9">
<input type="image" src="buy_button.png" alt="Add to Cart" title="Instructional Video Part 1: Add to Cart">
</form>
頁面上會有7-9個,每個都有一個復選框,所以我假設一個腳本需要弄清楚哪些被選中並通過form動作提交? 也許有一種更好的方法可以解決我沒想到的問題,因為a)超出了我的視線,或者b)尚未弄清楚。 無論如何,這可能嗎?
為什么不將它們全部以相同的形式出現? 您是否有任何特定原因要為每個表單使用單獨的表單?
將它們全部以相同的形式放置,然后在“提交”頁面(邏輯所在)上,對所有復選框運行一個循環,僅對選中的復選框添加到購物車中
該復選框可以將該值作為相應的產品ID。...
或類似的HTML頁面
Product1 <input typ='checkbox' name='checkbox[1]'>
Product2 <input typ='checkbox' name='checkbox[2]'>
Product3 <input typ='checkbox' name='checkbox[3]'>
在邏輯頁面
foreach($_POST[checkbox] as $k=>$v){
if($v=='checked')
//add to cart like $_POST[product[$k]] $_POST[amount[$k]] if there are such elements on the html page
}
您可以這樣做,因為
$("#yourcommonbuton").click(function() {
if($("#checkbox1").prop('checked') == true) $("#form1").submit();
if($("#checkbox2").prop('checked') == true) $("#form2").submit();
if($("#checkbox3").prop('checked') == true) $("#form3").submit();
return false;
});
給每個表單添加一個帶有類的復選框:
<form name="cart_quantity" action="index.php?action=add_product" method="post" enctype="multipart/form-data">
<input type="checkbox" class="IsCheck" />
<input type="hidden" name="cart_quantity" value="1">
<input type="hidden" name="products_id" value="7">
<input type="hidden" name="id[6]" value="9" id="attrib-6-9">
<input type="image" src="buy_button.png" alt="Add to Cart" title="Instructional Video Part 1: Add to Cart">
</form>
在所有表單下方添加一個按鈕,根本不必在表單內部:
<input type="button" value="Submit Selected" id="submit_btn" />
jQuery的:
$('#submit_btn').on('click', function() {
$('.IsCheck').is(':checked').each(function() {
$(this.form).submit();
});
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.