0
我正在建立一個使用數據表格網格的asp.net mvc應用程序。我顯示網格。在網格我加了rowclick事件:jquery datatables,模式窗口後表不可用
function CreateRowClickHandler() {
var table = $('#table').dataTable();
$("#table > tbody").on('click', 'tr', function(e) {
e.preventDefault();
var index = $('#table').data('id-index');
var id = table.fnGetData($(this)[0])[index];
var url = $('#table').data('rowclick-url');
url += "/" + id;
$().loadPartial(url);
});
}
的loadpartial函數加載MVC行動:
$.fn.loadPartial = function (url, callback) {
var container = ($(this).length == 0) ? ($("#jqcontainer")) : ($(this));
container.load(url, function (responseText, textStatus, XMLHttpRequest) {
if (XMLHttpRequest.status == 403) {
$('body').notifyBox({
message: 'Unauthorized access! Call support for help!'
});
}
if (XMLHttpRequest.status == 500) {
$('body').notifyBox({
message: 'The process failed for unknown reasons! Call support for help!'
});
}
if ($.isFunction(callback)) callback(responseText, textStatus, XMLHttpRequest);
});
};
當我進入鉻調試器,當我第一次加載頁面,我可以打電話:
$('#table').dataTable().fnReloadAjax();
這可以根據需要重複多次。它從服務器重新加載數據。當我點擊了行之一,之後我用下面的代碼關閉模態窗口:
$('#partialview').dialog("close");
在Chrome調試器fnreloadajax給了我以下錯誤:
TypeError: Object [object Object] has no method 'fnReloadAjax'
它看起來像該對象在模型窗口關閉後不再有DataTables網格,但我無法弄清楚爲什麼會發生這種情況。任何人都可以給我一些提示嗎?
你在通過.load()函數加載的頁面中重新加載jquery嗎? – 2013-05-01 16:05:51
這是一個正常的mvc頁面,所以可能是的...讓我們看看如果檢查,會做的伎倆.. – Patrick 2013-05-01 16:28:01
謝謝,這的確是我返回視圖,而不是部分。 – Patrick 2013-05-01 16:30:36