代码之家  ›  专栏  ›  技术社区  ›  Anriëtte Myburgh

接收jquery中数组形式的input[]的所有值以发送到php脚本

  •  2
  • Anriëtte Myburgh  · 技术社区  · 14 年前

    我正忙于获取使用jquery发送到PHP脚本的表单上的值。嗯,我的大多数复选框的名称都是 name="input[]" 因此,当我警告表单中返回的值时, submit() 处理程序,它只返回具有该名称的第一个复选框的值。如何以数组形式返回值?

    这是我的代码:

    $("form.enquiry").submit(function () {
        // general enquiry variables
        var name = "";
        var email = "";
        var enquiry = "";
    
        // quote enquiry variables
        var company = "";
        var address = "";
        var cellphone = "";
        var quote_package = "";
        var quote_items = "";
    
        // data to be sent to sendEmail.php
        var data = "";
    
        if ($(this).find("input[name='enquiry_type_chk']:checked").val() == "General") {
            name = $(this).find("input[name='general_name_txt']").val();
            email = $(this).find("input[name='general_email_txt']").val();
            enquiry = $(this).find("textarea[name='general_enquiry_txt']").val();
    
            data = "name_txt="+name+"&email_txt="+email+"&enquiry_txt="+enquiry;
        }
    
        if ($(this).find("input[name='enquiry_type_chk']:checked").val() == "Quote") {
            name = $(this).find("input[name='quote_name_txt']").val();
            email = $(this).find("input[name='quote_email_txt']").val();
            company = $(this).find("input[name='quote_company_txt']").val();
            address = $(this).find("input[name='quote_address_txt']").val();
            cellphone = $(this).find("input[name='quote_cell_txt']").val();
            quote_package = $(this).find("input[name='quote_package_chk[]']").val();
            quote_items = $(this).find("input[name='quote_item_chk[]']").val();
    
            data = "name_txt="+name+"&email_txt="+email+"&company_txt="+company+"&address_txt="+address+"&cellphone_txt="+cellphone+"&quote_package_txt="+quote_package+"&quote_items_txt="+quote_items;
    
            alert(data);
        }
    
    
        return false;
    });
    

    我表格的一部分:

    ...
    <td><input type="checkbox" name="quote_item_chk[]"  id="quote_package_chk" value="Login member area" class="power toolbox quote_item_chk" />
    <label for="quote_package_chk" class="nostyle item power toolbox">Login/member area</label></td>
    <td><input type="checkbox" name="quote_item_chk[]" class="quote_item_chk basic power toolbox" id="quote_package_chk" value="Photo video gallery" />
    <label for="quote_package_chk" class="nostyle item basic power toolbox">Photo and/or video gallery</label></td>
    <td><input type="checkbox" name="quote_item_chk[]"  id="quote_package_chk4" class="quote_item_chk" value="Portfolio" />
    <label for="quote_package_chk4" class="nostyle item">Portfolio (gallery + custom descr.)</label></td>
    

    事先谢谢。

    1 回复  |  直到 14 年前
        1
  •  2
  •   Quentin    14 年前

    您可以循环返回的元素(而不是调用 val() 在该集团,它只在第一个运营),但它将更容易停止重新发明车轮和只是使用 serialize