Javascript-форум (https://javascript.ru/forum/)
-   Элементы интерфейса (https://javascript.ru/forum/dom-window/)
-   -   удалить подключенный плагин, а затем включить его (https://javascript.ru/forum/dom-window/34338-udalit-podklyuchennyjj-plagin-zatem-vklyuchit-ego.html)

FedyaLutkovski 30.12.2012 00:22

удалить подключенный плагин, а затем включить его
 
Можно ли удалить подключенный плагин, а затем включить его? например мы подключаем плагин сортировки
$("#myTable").tablesorter({widthFixed: false, widgets: ['zebra']});

Как его программно отключить?

Deff 30.12.2012 00:47

FedyaLutkovski,
Какова причина отключения - включения ?
Имхо не всегда задачи нун решать столь изощрённой методой

FedyaLutkovski 30.12.2012 01:23

Ну вообще у меня какой-то тотальный *****
$(document).ready(function(){
 $("#myTable").tablesorter({widthFixed: true, widgets: ['zebra'],}); 
$("#inPoisk").keyup(); 
});

$("#inPoisk").keyup(function(){
$("#myTable td").each(function(){$(this).parent().remove()});
$.getJSON('ajax.php', {
'action': 'get_teachers',
'poisk': $("#inPoisk").val()
},
		function (json) {

             	for(i=0; i<=json.length-1;i++){

            	$('#myTable > tbody').append('<tr><td id=row'+i+'>'+json[i].last_name+' '+json[i].first_name+' '+json[i].father_name+'</td><td></td></tr>');
				  $('#row'+i).attr('style', 'cursor: pointer;')
				  $('#row'+i).attr('onclick', 'location.href =\'teachersupdate.php?teacher='+json[i].id+'\'' )
                 };
  $('#myTable').trigger("update");                      
})

});

добавляю данные аяксом и осуществляю поиск в таблице. все работает кроме tablesorter ) При загрузке страницы не рисуется "зебра", только по клику, когда выбираем сортируемую колонку. не понимаю почему.

Deff 30.12.2012 01:39

думаю, что подключение tablesorter нужно делать в конце aякс запроса (внутри него), после строки
$('#myTable').trigger("update");

Посколь ответ от аякс значительно позже загрузки страницы

FedyaLutkovski 30.12.2012 01:53

$(document).ready(function(){

$("#inPoisk").keyup(); 
});

$("#inPoisk").keyup(function(){
$("#myTable td").each(function(){$(this).parent().remove()});
$.getJSON('ajax.php', {
'action': 'get_teachers',
'poisk': $("#inPoisk").val()
},
		function (json) {

             	for(i=0; i<=json.length-1;i++){

            	$('#myTable > tbody').append('<tr><td id=row'+i+'>'+json[i].last_name+' '+json[i].first_name+' '+json[i].father_name+'</td><td></td></tr>');
				  $('#row'+i).attr('style', 'cursor: pointer;')
				  $('#row'+i).attr('onclick', 'location.href =\'teachersupdate.php?teacher='+json[i].id+'\'' )
                 };
  $('#myTable').trigger("update");   
 $("#myTable").tablesorter({widthFixed: true, widgets: ['zebra'],});                    
})

});

сделал так. Теперь работает, но когда выполняю поиск, справа добавляется какой-то непонятный серый фон.. адже не знаю как объяснить

Deff 30.12.2012 02:00

Цитата:

Сообщение от FedyaLutkovski
адже не знаю как объяснить

Лучше ссыль на тест страницу в инете
Вообще , продебажьте созданное аяксом, имхо может нарушена структура таблы или, возможно неучтённое действо стиля на вновь созданные элементы, внутри некого селектора - пробуйте временно отключать стиль(но после первой проверки, что всё встроено верно

san4es78 20.03.2013 11:37

у меня не работает update.
плагин и jquery свежие. в плагине исправил ошибку с определением браузера (в связи с удалением ф-ции $.browser).
update отказывается работать, данные в TBODY заменяю полностью, сначала выводится новые строки, а потом таблица принимает предыдущий вид.

upd: использую плагин для постраничной разбивки. косяк в нём....


Часовой пояс GMT +3, время: 03:53.