我使用帶數據表的jQuery顯示大約300個數據庫行。該表位於jQuery UI對話框中,並通過AJAX請求下載。下載後,我想在每一行上創建jQuery UI按鈕進行編輯和刪除。這需要很長時間(在一些'弱'客戶),這真的很煩人。有沒有辦法讓它更快?我嘗試了輸入類型=「按鈕」,有點快但很難看。任何想法/建議?先謝謝你!!!jQuery Datatables性能
編輯 最後兩行此處插入按鈕是一些代碼:
$('<div id="wdw1000frm"></div>').dialog({
parent : '#wdw1000',
autoOpen : false,
closeOnEscape : false,
height : 500,
maxHeight : 500,
minHeight : 500,
minWidth : 700,
position : [479, 68],
title : 'Arrivals',
width : 1000
});
DWM.showForm("1000", "arrivals", "Arrivals", "Arrivals");
$("#wdw1000_tbl").dataTable({
"bJQueryUI" : true,
"bPaginate" : false,
"bProcessing" : true,
"bLengthChange" : false,
"bFilter" : true,
"bSort" : true,
"bInfo" : false,
"bAutoWidth" : false,
"sScrollY" : "300px",
"sDom" : "<\"H\"lfr>tS<\"F\"ip>",
"fnInitComplete" : function() {
this.fnSettings().oScroller.fnScrollToRow(64);
},
"bDeferRender" : false,
"oLanguage" : {
"sProcessing" : "Επεξεργασία...",
"sLengthMenu" : "Δείξε _MENU_ στοιχεία",
"sZeroRecords" : "Δεν βρέθηκαν στοιχεία που να ταιριάζουν",
"sInfo" : "Εμφάνηση _START_ έως _END_ από _TOTAL_ στοιχεία",
"sInfoEmpty" : "Εμφάνηση 0 έως 0 από 0 στοιχεία",
"sInfoFiltered" : "(εφαρμογή φίλτρου σε _MAX_ συνολικά στοιχεία)",
"sInfoPostFix" : "",
"sSearch" : "Αναζήτηση:",
"oPaginate" : {
"sFirst" : "Πρώτη",
"sPrevious" : "Προηγούμενη",
"sNext" : "Επόμενη",
"sLast" : "Τελευταία"
}
},
"aaData" : [['168', '00:10-1', '1339708200', 'TRA 232', 'Sundsvall', 'SDL', '', '', '', '0', '', '0', '3', 'Cancelled', 'CAN', '<div class="Edit"></div>', '<div class="Delete"></div>'],
['169', '00:45-1', '1339710300', 'AEE 261', 'Varkaus', 'VRK', '', '', '', '0', '', '0', '5', 'New Time', 'NET', '<div class="Edit"></div>', '<div class="Delete"></div>'],
['170', '01:15-1', '1339712100', 'FPO 228', 'Indianapolis', 'IND', '', '', '', '0', '', '0', '5', 'Diverted', 'DIV', '<div class="Edit"></div>', '<div class="Delete"></div>'],
.
.
.
['300', '08:10+1', '1339909800', 'LT 3620', 'Sao Joao', 'QSJ', '', '', '', '0', '', '0', '3', '', '', '<div class="Edit"></div>', '<div class="Delete"></div>']],
"aoColumns" : [{
"bVisible" : false
}, {
"aDataSort" : [2, 1],
"sClass" : "alignLeft",
"sTitle" : "STM",
"sWidth" : "100px"
}, {
"bVisible" : false
}, {
"sClass" : "alignLeft",
"sTitle" : "FN",
"sWidth" : "100px"
}, {
"sClass" : "alignLeft",
"sTitle" : "CITY"
}, {
"bVisible" : false
}, {
"sClass" : "alignLeft",
"sTitle" : "VIA"
}, {
"bVisible" : false
}, {
"sClass" : "alignLeft",
"sTitle" : "EST",
"sWidth" : "100px"
}, {
"bVisible" : false
}, {
"sClass" : "alignLeft",
"sTitle" : "ACT",
"sWidth" : "100px"
}, {
"bVisible" : false
}, {
"sClass" : "alignCenter Editable",
"sTitle" : "BAG",
"sWidth" : "100px"
}, {
"sClass" : "alignLeft",
"sTitle" : "REM"
}, {
"bVisible" : false
}, {
"sTitle" : " ",
"sWidth" : "10px",
"bSortable" : false,
"sClass" : "Edit"
}, {
"sTitle" : " ",
"sWidth" : "10px",
"bSortable" : false,
"sClass" : "Delete"
}]
});
$('#wdw1000_tbl div.Edit').button ({ icons : {primary : 'ui-icon-pencil'},text : false,label : 'Edit'});
$('#wdw1000_tbl div.Delete').button ({ icons : {primary : 'ui-icon-pencil'},text : false,label : 'ui-icon-trash'});
對某人看不到的代碼進行富有成效的評論是一項運動。我們會得到如此多的猜測,還是一勞永逸?請發佈您的代碼。 –
是你需要哪一部分代碼的基調? – Johntor
考慮將它帶到[代碼評論](http://codereview.stackexchange.com)。我建議至少緩存jQuery對象和其他可能的變量。請參閱:http://stackoverflow.com/questions/5724400/does-using-this-instead-of-this-provide-a-performance-enhancement –