在两个JS文件之间共享代码

时间:2014-07-13 07:45:21

标签: javascript jquery asp.net asp.net-mvc

我需要在两个不同的JS文件中使用以下(使用MVC5项目)代码。 最好的方法是什么?

$("#act").prop("disabled", "disabled");
$("form").change(function () { 
    $("#act").removeAttr("disabled");
    $("#btn").prop("disabled", "disabled");
});
$("input").keyup(function () { 
    $("#act").removeAttr("disabled");
    $("#btn").prop("disabled", "disabled");
});

1 个答案:

答案 0 :(得分:2)

也许这不是最佳方法,但应该在更简单的项目中正常工作。使用代码:

创建名为common.js的第一个文件
MyApp = {};
MyApp.Common = {};
MyApp.Common.initializeForms = function() {
    $("#act").prop("disabled", "disabled");
    $("form").change(function () { 
        $("#act").removeAttr("disabled");
        $("#btn").prop("disabled", "disabled");
    });
    $("input").keyup(function () { 
        $("#act").removeAttr("disabled");
        $("#btn").prop("disabled", "disabled");
    });
}

MyApp是您的应用程序的命名空间。 Common命名空间用于存储模块之间的公共功能。

将此文件包含在使用此代码的位置,并通过写入来调用:

MyApp.Common.initializeForms();

显然有更专业的方法,例如使用RequireJS或其他依赖注入库,但这种方法也适用,特别是如果您将整个代码捆绑在一个文件中。