所以我继承了一段代码,我正在寻找能帮助我了解正在发生的事情的人。所以我设置了一些名称空间,在其中我有一些功能。
我还有另一个javascript文件通过C.S.gridSetSearchFilter(foo,bar)引用这些函数,但是这个函数不能被这个aditional文件访问。它告诉我undefined不是一个函数。
这对我来说似乎很奇怪,因为我已经验证了主命名空间已经加载并初始化,但是第二个javascript文件似乎无法访问命名空间。关于我在哪里的任何想法?
jQuery(function ($) {
// Check if namespace is defined
if (typeof (C) === 'undefined') {
var C = {};
}
// Check if namespace is defined
if (typeof (C.S) === 'undefined') {
C.S = {};
}
// Define the application namespace
C.S = (function ($) {
var _init = function () {
//more init code here...
}
var _gridSetSearchFilter = function (gridId, gridPagingId) {
$('#' + gridId).jqGrid('navGrid', '#' + gridPagingId, { edit: false, add: false, del: false },
{}, // use default settings for edit
{}, // use default settings for add
{}, // use default settings for delete
{ multipleSearch: true, showQuery: true, width: 650, closeOnEscape: true, closeAfterSearch: true }, // enable the advanced searching
{ closeOnEscape: true }
);
$('#' + gridId).jqGrid('filterToolbar', { stringResult: true, searchOnEnter: false, defaultSearch: 'cn' });
};
var _gridFluidResize = function (gridId, gridContainerId) {
// Setup grid to have fluid width on window resize
$(window).bind('resize', function () {
$('#' + gridId).setGridWidth($('#' + gridContainerId).width(), true);
}).trigger('resize');
};
return {
init: function () {
_init();
},
gridSetSearchFilter: function (gridId, gridPagingId) {
_gridSetSearchFilter(gridId, gridPagingId);
},
gridFluidResize: function (gridId, gridContainerId) {
_gridFluidResize(gridId, gridContainerId);
}
}