将异步post更改为同步的普通MVC post

本文关键字:post 同步 MVC 异步 | 更新日期: 2023-09-27 18:28:37

我们在mvc项目中有一个易于解决的ajax帖子问题。有一个Customer对象的Model类,它的属性之一是CustomerPicture。客户正确填写表格后,他/她会像往常一样点击"保存"按钮。为了将图片发布到服务器端,我们使用了一个jquery插件https://github.com/blueimp/jQuery-File-Upload对于具有Customer对象的其他属性的复杂业务策略的特殊事项。这个插件使用ajax post,但由于我们的bussines策略,我们希望防止这种情况,并希望使其成为一个正常的mvc post。

data.submit();  // asynchronous post is triggered here by BlueImp jQuery Upload's default

我将默认的上面的代码更改为下面的代码,但它不起作用。

data.submit(function(){
    $('#frm_create_customer').submit();
});

作为我们问题的总结,是将异步post更改为同步的普通服务器post。希望你能有所作为。当做

将异步post更改为同步的普通MVC post

根据jquery文档:$.ajax()的async选项默认为true,表示在发出请求后可以继续执行代码。强烈建议将此选项设置为false(从而使调用不再异步),因为这可能会导致浏览器无响应。

您可以将此选项设为false。您还可以将ajax的all-async选项更改为false,然后在调用后将其恢复为true。。。您也可以使用$.ajaxSetup()。这也将使所有后续的ajax调用为false。。

但我同意前面的回答,文件上传可能不是异步完成的。