Не страбатывает строка в коде
Есть кусок jquery плагина
sort: function(ctx){
if(ats){
ats = false;
return;
}
sortField = ctx.data('colkey');
$('.col-head[data-colkey="'+sortField+'"] span').addClass('sort-desc');
if(sortDirect.length<2 || sortDirect == 'ASC'){
sortDirect = 'DESC';
}else{
sortDirect = 'ASC';
}
this.loadContent();
},
Здесь не срабатывает данная строка:
$('.col-head[data-colkey="'+sortField+'"] span').addClass('sort-desc');
Все переменные имеют нужные данные, проверял. Консоль молчит. Вызывается функция так: onclick="s.sort($(this))" Почему не срабатывает addClass() ? |
Добавь перед этой строкой:
var selector = '.col-head[data-colkey="'+sortField+'"] span'; console.log(selector); console.log(document.querySelector(selector)); |
Вот что говорит консоль:
Цитата:
|
Цитата:
Цитата:
|
Кстати зачем делать запрос через селектор, если ctx - и есть нужный элемент? Или так не всегда?
|
рони,
danik.js, Так класс не добавляется:
sort: function(ctx){
if(ats){
ats = false;
return;
}
sortField = ctx.data('colkey');
ctx.find('span').addClass('sort-desc');
if(sortDirect.length<2 || sortDirect == 'ASC'){
sortDirect = 'DESC';
}else{
sortDirect = 'ASC';
}
this.loadContent();
},
А так срабатывает:
sort: function(ctx){
if(ats){
ats = false;
return;
}
sortField = ctx.data('colkey');
ctx.find('span').addClass('sort-desc');
return;
},
Почему? |
Вся суть в этой строке:
this.loadContent(); если ее убрать - то работает Вот сама loadContent:
loadContent : function(){
var cpage = parseInt($(curPage).val()),
apage = parseInt($(totalPages).html());
if(cpage<1 || cpage>apage){
$(curPage).css('background','#ffb0b0');
return;
}else{
$(curPage).css('background','#f5faff');
}
$(cList).addLoadImg("Loading...");
$(cList).load(HOST+'load/section/'+TARGET+'/'+SECTION,{page:cpage,instruments:0,sortField:sortField,sortDirect:sortDirect});
},
|
Я нашел ошибку, всем спасибо)
|
Sanu0074,
так наверно ответ с сервера ждать нужно ... :-? |
| Часовой пояс GMT +3, время: 04:55. |