簡體   English   中英

多表單提交,一次提交

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM