フレキシグリッドをロードする「loadTimeTrackersGrid()」という関数があります。セットアップは次のようになります。
$(document).ready(function () {
var editTrackerID = 0;
loadTimeTrackersGrid();
)};
関数の冒頭は次のようになります。
function loadTimeTrackersGrid(caseStatus) {
var url = 'Utilities/DataViewHandlers/ViewTimeTrackers.ashx?CaseFileID=' + $('#hidCaseFile').val();
if ($('#hidTaskID').val() !== "")
url += '&TaskID=' + $('#hidTaskID').val();
if (caseStatus == "NI") {
url += '&NonInvoiced=1';
}
$('#viewTimeTrackersGrid').flexigrid({
url: url,
dataType: 'json',
method: 'get',
ご覧のとおり、一連の行を返すストアド プロシージャを含む別のページを呼び出し、jsonwriter が返された列をフレキシグリッドに配置します。
しかし、私が抱えている問題は (document).ready() の外にあります。「loadTimeTrackersGrid()」を呼び出す関数がある場合、flexigrid をリロードしたり、ストアド プロシージャを含むファイルを呼び出したりすることはありません。
私の機能(私が仕事をしようとしている)は次のようになります:
function returnInvoicedItems() {
loadTimeTrackersGrid();
$('.menuBtn img').parent().children('ul').removeClass('menuShow');
}
そして、これは私が "returnInvoicedItems" 関数を呼び出す方法です:
<li><a href="#" onclick="returnInvoicedItems()">Non Invoiced Tracker</a></li>