当用户从打开的对话框中选择一个文件(图像,视频等..)我会自动提交表单,我期待从我的控制器方法获取回应,告诉您是成功还是错误。jquery .submit with function()不会触发,没有函数()它会
如果我叫了jQuery提交类似,因此将正常工作:一旦
$("#fileupload2").submit(); //fileupload2 is a form tag
我添加这样的事情也不会:
$("#fileupload2").submit(function() { alert('hello'); });
我不知道为什么作为一旦我添加它的函数将不会被调用。我没有在浏览器开发工具中看到的错误。我的HTML看起来像这样:
<form id="fileupload2" action="/Home/UploadFiles" method="POST" enctype="multipart/form-data">
<div class="btn btn-success fileinput-button">
<i class="icon-plus icon-white"></i>
<span>Add files...</span>
<input id="fileupload" type="file" onchange="uploadSelectedFile(this);" name="file">
</div>
@*<input type="submit" />*@
</form>
<script>
$(document).ready(function() {
$("#fileupload2").submit(function (e) {
alert('hello'); $.post('/Home/UploadFiles', $('#fileupload2').serialize(), function (data) {
alert(data);
});
return false;
});
});
function uploadSelectedFile() {
$("#fileupload2").submit();
}
</script>
我在调用uploadSelectedFile方法onchange调用jquery提交。任何意见或想法,为什么发生这种情况我会很感激。对我来说这似乎是正确的。
控制器的方法:
[HttpPost]
public ActionResult UploadFile() {
//Some code
return Json("success"); //or error
}
什么是你想怎么办?把一个函数为它意味着你正在创建一个回调函数,当表单提交是 –
我试图得到回应从那里的形式被发布 – TMan