JQuery在F5之后加载

时间:2015-02-23 15:24:43

标签: javascript jquery asp.net jquery-ui jquery-plugins

我在asp.net项目中使用了以下脚本。一切正常,但在将我的项目发布到IIS后,一些用户抱怨渲染问题。如果他们按F5然后一切正常,他们不必再次按F5来看到控件正确渲染。

这是正常行为还是有解决方法?

.js文件

var prm = Sys.WebForms.PageRequestManager.getInstance();


$(function () {


    $("#uc_DDiscipline select").multiselect({

        header: false,
        multiple: false,
        selectedList: 1,
        minWidth: 265
    });

});

prm.add_endRequest(function () {

    $('.ui-multiselect-menu').each(function () {
        $(this).remove();
    });

    $("#uc_DDiscipline select").multiselect({

        header: "-- View All --",
        multiple: false,
        noneSelectedText: "-- View All --",
        selectedList: 1,
        minWidth: 265
    });

});

1 个答案:

答案 0 :(得分:1)

这是正常行为。部署后,浏览器仍在缓存并使用旧的.js文件。按下F5后,下载当前的.js,一切似乎再次起作用。

你可以对此做些什么,就是在.js文件名中添加一个参数 例如:

/Scripts/MyScrjpt.js?deployedOn=20150223

浏览器认为,新文件已经存在并且必须下载。因此,每次部署应用程序时都必须更改参数值。