提交处于for循环中的表单

时间:2018-07-23 07:58:30

标签: php jquery html forms

for循环中的一个表单,在此表单中,用户使用输入类型文件添加一个excel文件,

for ($i = 0; $i < 4; $i++) {
 <form id="TypeValidation" method="" enctype="multipart/form-data">
 <input type="hidden" id="pii_categoryid" name="pii_categoryid" value="<?php echo $i;?>" /> 
    <div>
        <span class="btn btn-rose btn-round btn-file">
        <span class="fileinput-new">Select File</span>
        <span class="fileinput-exists">Change</span>
          <input type="file" name="<?php echo $i;?>_attachment" id="<?php echo $i;?>_attachment" accept=".xlsx, .xls, .csv" />
        </span>
          <a href="#" class="btn btn-danger btn-round fileinput-exists" data-dismiss="fileinput"><i class="fa fa-times"></i> Remove</a>
          <button type="submit" name="add_file" id="add_file" value="<?php echo $i;?>_file" class="btn btn-success btn-round fileinput-exists">Upload</button>
    </div>
 </form>    
}

此表单是使用jquery提交的,这里是代码

$("#TypeValidation").on('submit',(function(e) 
{ 
var pii_categoryid = $(this).find('input[name="pii_categoryid"]').val();
var fileUploadID = $(this).find('button[name="add_file"]').val();
        e.preventDefault(); 
   $.ajax({
        url: "fn_dsr_wizard_submit.php?submitid="+fileUploadID,
        type: "POST",
        data:  new FormData(this),
    contentType: false,
        cache: false,
        processData:false,
        dataType: "html",    
        success: function (result) { 
        alert(result);
        //prompt("Copy to clipboard: Ctrl+C, Enter", result);
        location.reload();
        if(result=='1'){
            location.replace("ds_dashboard.php");
        }else {
            location.replace("ds_dashboard.php");               
        }
        }
    });   
    }
    ));

我的表单显示this

当用户添加客户端excel文件时,该文件将被提交,但问题是,当用户添加捐助者文件或除客户端excel以外的其他文件时,其未提交。

1 个答案:

答案 0 :(得分:-2)

尝试分配不同的ID,并为每个表单添加一个类名,例如:

<form id="TypeValidation<?php echo $i; ?>" class="my-form" method="" enctype="multipart/form-data">

在javascript中:

$(".my-form").on('submit',(function(e)  { ...