Jquery 移动代码
我只是好奇这里是否有我可以放在dataTables脚本中的任何代码。我在每个模块的javascript页面上都有大部分相同的编码,所以我认为通过类似的编码,我可以将所有相同的编码放回dataTables页面Jquery 移动代码,jquery,datatables,Jquery,Datatables,我只是好奇这里是否有我可以放在dataTables脚本中的任何代码。我在每个模块的javascript页面上都有大部分相同的编码,所以我认为通过类似的编码,我可以将所有相同的编码放回dataTables页面 $.fn.dataTableExt.oApi.fnLengthChange = function ( oSettings, iDisplay ) { oSettings._iDisplayLength = iDisplay; oSettings.oApi._fnCalculateEnd( o
$.fn.dataTableExt.oApi.fnLengthChange = function ( oSettings, iDisplay ) {
oSettings._iDisplayLength = iDisplay;
oSettings.oApi._fnCalculateEnd( oSettings );
/* If we have space to show extra rows (backing up from the end point - then do so */
if ( oSettings._iDisplayEnd == oSettings.aiDisplay.length )
{
oSettings._iDisplayStart = oSettings._iDisplayEnd - oSettings._iDisplayLength;
if ( oSettings._iDisplayStart < 0 )
{
oSettings._iDisplayStart = 0;
}
}
if ( oSettings._iDisplayLength == -1 )
{
oSettings._iDisplayStart = 0;
}
oSettings.oApi._fnDraw( oSettings );
$('select', oSettings.oFeatures.l).val( iDisplay );
};
$(document).ready(function() {
var pageName = $('#pageName').val();
var oTable = $('#templatesPageList').dataTable( {
"sDom": 'rti<"pagination"p>',
"iDisplayLength": 10,
"sPaginationType": "full_numbers"
});
if(oTable.fnSettings().fnRecordsTotal() <= 10) {
$('div.pagination').remove();
} else {
$('div.pagination').append();
}
if(oTable.fnSettings().fnRecordsTotal() == 0) {
$('.bt_red').remove();
$('.bt_blue').remove();
}
if(oTable.fnSettings().fnRecordsTotal() <= 10) {
$('.bt_blue').remove();
}
var info = $('.dataTables_info');
$('tfoot tr td.rounded-foot-left').append(info);
$('.edit').live('click', function(e) {
e.preventDefault();
var templateID = $(this).attr('id');
if(!$('div.right_content').hasClass("loading")){
$('div.right_content').addClass("loading").load('modules/forms/edit/templates.php?templateID=' + templateID,
function(){
$(this).removeClass("loading");
});
}
});
$('a.bt_green').click(function(e) {
e.preventDefault();
$('div.right_content').load('modules/forms/addnew/' + $(this).attr('id'));
});
$('table tr').click(function() {
checkBox = $(this).children('td').children('input[type=checkbox]');
if(checkBox.attr('checked'))
checkBox.removeAttr('checked');
else
checkBox.attr('checked', 'checked');
});
$('.ask').jConfirmAction( {
question : "Are you sure you want to delete the selected row?",
yesAnswer : "Yes",
cancelAnswer : "No",
onYes: function(evt) {
templates(evt.target);
}
});
$('.ask2').jConfirmAction( {
question : "Are you sure you want to delete all selected rows?",
questionClass: "question2",
onYes: function(evt){
templatesArray(evt.target);
}
});
$('.viewAll').live('click', function(e) {
e.preventDefault();
oTable.fnLengthChange(-1);
$(this).removeClass('viewAll').addClass('paginateRecords');
$(this).find('strong').html('View Paginated Records');
$('.pagination').hide();
});
$('.paginateRecords').live('click', function(e) {
e.preventDefault();
oTable.fnLengthChange(10);
$(this).removeClass('paginateRecords').addClass('viewAll');
$(this).find('strong').html('View All Site Templates');
$('.pagination').show();
});
function templates(whatsThis) {
var templateID = $(whatsThis).parents('td').find('img').attr('id');
var dataString = 'templateID=' + templateID + '&deleteTemplate=True';
var iRow = oTable.fnGetPosition( $(whatsThis).parents('tr').get(0));
$.ajax({
type: "POST",
url: "processes/templates.php",
data: dataString,
success: function(data) {
if (data.errorsExist) {
} else {
oTable.fnDeleteRow(iRow); // remove the row from the table
if(oTable.fnSettings().fnRecordsTotal() == 0) {
$('.bt_red').remove();
$('.bt_blue').remove();
}
if(oTable.fnSettings().fnRecordsTotal() <= 10) {
$('.bt_blue').remove();
}
if(oTable.fnSettings().fnRecordsTotal() <= 10) {
$('div.pagination').remove();
}
}
}
});
}
function templatesArray(whatsThis) {
var myNewArray = new Array();
var aRow = new Array();
$('input:checkbox[name="templates"]:checked').each(function(i) {
myNewArray.push($(this).val());
aRow.push($(this).closest('tr')[0]);
});
var dataString = 'templatesArray=' + myNewArray + '&deleteTemplatesArray=True';
$.ajax({
type: "POST",
url: "processes/templates.php",
data: dataString,
success: function(data) {
if (data.errorsExist) {
} else {
$(whatsThis).parents("tr").eq(0).hide();
for (i in aRow) // loop over the array of row indexes
oTable.fnDeleteRow(aRow[i]);
if(oTable.fnSettings().fnRecordsTotal() == 0) {
$('.bt_red').remove();
$('.bt_blue').remove();
}
if(oTable.fnSettings().fnRecordsTotal() <= 10) {
$('.bt_blue').remove();
}
if(oTable.fnSettings().fnRecordsTotal() <= 10) {
$('div.pagination').remove();
}
}
}
});
}
});
$.fn.dataTableExt.oApi.fnLengthChange=函数(oSettings,iDisplay){
oSettings._iDisplayLength=iDisplay;
oSettings.oApi.\u fn计算(oSettings);
/*如果我们有空间显示额外的行(从端点备份-然后这样做*/
if(oSettings._iDisplayEnd==oSettings.aiDisplay.length)
{
oSettings._iDisplayStart=oSettings._iDisplayEnd-oSettings._iDisplayLength;
如果(oSettings.i显示开始<0)
{
oSettings._iDisplayStart=0;
}
}
如果(oSettings.\u i显示长度==-1)
{
oSettings._iDisplayStart=0;
}
oSettings.oApi.\u fnDraw(oSettings);
$('select',oSettings.oFeatures.l).val(iDisplay);
};
$(文档).ready(函数(){
var pageName=$('#pageName').val();
var oTable=$(“#TemplatesAgelist”)。数据表({
“sDom”:“rti”,
“iDisplayLength”:10,
“sPaginationType”:“完整编号”
});
如果(oTable.fnSettings().fnRecordsTotal()是,则可以将此文件中应用于多个页面的任何内容移出到在这些页面上加载的脚本文件中
通常,如果我决定将什么放入哪个文件中,我会标记可以同时执行以下操作的函数/块:
运行时不需要设置或绑定任何其他内容
在多个页面上需要或使用
将这些内容复制到另一个js文件中,将其导入到相关页面上,您不需要维护一个12000行的javascript文件,而不需要维护几个较小的文件,这会让您感觉更好
关于特定的文件,我不知道jquery.dataTables.js中有什么,但我建议将您自己的任何代码移到文件中,这些文件的命名反映了它们的功能或至少在哪里使用它们
不确定这是否是您要问的,但希望它能有所帮助。是的,您可以移动代码…只需复制它,并将其粘贴到另一个位置(如果这是您要问的):)
Jeff,您可能想澄清您要完成的任务(问题已经有3票接近).你到底有什么问题?你怎么看它有3张接近票数的选票,但我想知道的是,我上面的代码是否有任何问题我可以从那一页代码中取出,并转移到jquery.dataTables.js文件中,因为它的大部分都在许多其他页面中使用,所以如果我想聊天,我不必去back每个页面并在每个页面中进行更改我只能在dataTables.js页面中进行更改。