jquery ui 对话框在表单加载时缓存

标签 jquery asp.net-mvc-3 razor jquery-ui-dialog

使用 ASP.NET MVC3 (Razor),我有一个加载 jQuery UI 对话框的简单页面。

@{
    ViewBag.Title = "Home Page";
}
<h2>yo</h2>
<div id="fileUpload">
</div>
<button id="button2">
    Upload file
</button>
<script type="text/javascript">
    $(document).ready(function () {
        $('#button2').click(function () {
            $fileUpload = $('#fileUpload');
            $fileUpload.dialog({
                minWidth: 500,
                minHeight: 100,
                title: 'Upload File(s)',
                autoOpen: true,
                buttons: {
                    'Upload': function () {
                        $('form').submit();
                    },
                    'Cancel': function () {
                        $(this).dialog('close');
                    }
                },
                open: function (event, ui) {
                    $(this).load('@Url.Action(MVC.FileUpload.FileUpload())');
                },
                close: function (event, ui) {
                    $(this).dialog('destroy');
                    //$(this).remove();
                },
                dialogClass: 'no-close',
                closeText: '',
                modal: true
            });
        });
    });
</script>

注意 open() 表单调用 Controller 方法。它返回一个 PartialView ,看起来像这样......

public virtual ActionResult FileUpload() { return new PartialViewResult(); }

我遇到的问题是 IE 正在缓存对部分 View 的调用。如果我更新部分 View ,那么在清除浏览器缓存之前它不会加载。

我已经尝试过 close() 和 .remove() 上的“destroy”方法。两者都没有效果。我还确认每次单击 #button2 时都会调用 open()。

关于如何防止对话框内容被缓存有什么想法吗?

最佳答案

您可以将其添加到全局 js 代码中以防止 IE 缓存 ajax 请求:

$.ajaxSetup({ cache: false });

关于jquery ui 对话框在表单加载时缓存,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8130681/

相关文章:

json - 未捕获的语法错误 : Unexpected token B on live but not local server

c# - 删除客户记录时删除 ASP.NET 用户帐户?

asp.net-mvc-3 - ActionButton 代替 ActionLink

javascript - 使用 jQuery 创建带有 onerror 属性的 img

javascript - HTML 中范围的表单控件

css - ASP.NET MVC3 Razor - Html.ActionLink 样式

razor - 我是否应该遵循使用 Razor 语法编写的 C# 代码的 StyleCop 规则?

css - 如何允许在网页中水平滚动

javascript - 在 jQuery 中将事件绑定(bind)到元素的有效方法

c# - 图片上传有几种方法。什么时候选择一个而不是其他人?