<script type="text/javascript">
$('#fileUpload').submit(function (evt) {
evt.preventDefault();
$.ajax({
url: "/Transport/GridUpload",
type: 'POST',
data: $("#fileUpload").serialize(),
success: function (response) {
alert("it Works");
}
});
});
</script>
我想通过Ajax发布表单,但它不起作用。jquery表单提交不起作用
HTML表单:
@using (Html.BeginForm("GridUpload", "Transport", new { tipas = 1 }, FormMethod.Post, new {enctype="multipart/form-data", id = "fileUpload" }))
{
<table style="margin-top:0px;">
<tr>
<td>
<label for="file">Filename:</label>
</td>
<td>
<input type="file" name="file" id="file" />
</td>
<td>
<input type="submit" class="upload-button" value="Upload" />
</td>
</tr>
</table>
}
我得到错误:
POST http://localhost:3043/Transport/GridUpload 500 (Internal Server Error)
什么可能是错我的代码?我错过了什么吗? 为了记录,如果我删除evt.preventDefault();一切正常,但我需要防止提交表单没有Ajax。
你不能做SUMIT和阿贾克斯一起 – 2014-09-01 10:19:44
“一切正常,但我需要防止没有Ajax提交表单。” - 这意味着我只需要ajax提交...? 所以我应该改变$('#fileUpload')。提交什么? – 2014-09-01 10:20:56
我在你的代码中看到你正在通过表单上传一些数据。因此在这里需要提交。 Ajax不起作用。 – 2014-09-01 10:22:16