我正在尝试通过ajax以及表单中的某些字段上传文件。但是,它不起作用。我得到这个错误。
未定义索引:-文件
这是我的代码。
的HTML
<!-- File Button --> <div class="form-group"> <label class="col-md-4 control-label" for="file">Upload Software / File</label> <div class="col-md-4"> <input id="file" name="file" class="input-file" type="file"> </div> </div> <div class="form-group"> <label class="col-md-4 control-label" for="price">Price($)</label> <div class="col-md-4"> <input id="price" name="price" type="text" placeholder="Price" class="form-control input-md" required=""> </div> </div>
阿贾克斯
$("#add_product").click(function(e){ e.preventDefault(); product_name = $("product_name").val(); //d = $("#add_new_product").serialize(); $.ajax({ type: 'POST', url: 'ajax.php', data: $("#add_new_product").serialize(), success: function(response) { // alert(response); } }) });
的PHP
if (0 < $_FILES['file']['error']) { echo ":!"; } else { echo "ASa"; }
我在这里想念什么?
您可以尝试使用FormData():
FormData()
$("form#files").submit(function(){ var formData = new FormData($(this)[0]); $.ajax({ url: window.location.pathname, type: 'POST', data: formData, async: false, success: function (data) { alert(data) }, cache: false, contentType: false, processData: false }); return false; });
上面是一个示例代码,但是您可以使用它进行修改。