Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 01.08.2016, 17:15
Профессор
Отправить личное сообщение для ureech Посмотреть профиль Найти все сообщения от ureech
 
Регистрация: 11.03.2013
Сообщений: 778

Отменить действие или событие.
Всем привет.Есть группа чекбоксов и отдельный чекбокс при клике на который становятся активными все чекбоксы в группе.А так же две скрытые ссылки, которые появляются в зависимости от того на какие чекбоксы кликали.
<a onclick="allDel()" class="ajax ajax_all_del" href="javascript:;">Удалить всё</a>
<a  class="ajax ajax_del" href="javascript:;">Удалить</a>

<input onclick="check(this);" type="checkbox" name="self_del_all"  value="0">
 
<input  type="checkbox" name="self_del[]" class="self_del[]" id="1" value="0">
<input  type="checkbox" name="self_del[]" class="self_del[]" id="2" value="0">
<input  type="checkbox" name="self_del[]" class="self_del[]" id="3" value="0">

var b = document.getElementsByName('self_del_all');
var is_user;
var a = document.getElementsByName('self_del[]');
var inp = $("input[name='self_del[]']");

Для отдельного чекбокса
function check(self){
var checkValue=self.checked;
for(i=0;i<a.length;i++){if(a[i].checked=checkValue){
$('.ajax_all_del').show()
}
else{
$('.ajax_all_del').hide()}}}

Для группы.
var handler = function(){
if(!$(b).prop("checked")){
if($(this).prop("checked")){var id = $(this).attr('id')}
$('.ajax_del').toggle(inp.is(":checked"));
$('.ajax_del').on('click',function(){del(id)});
}
};
$(inp).bind('click',handler);


Всё работает, но есть такой нюанс. Если выбрать чекбокс в группе и потом отметить отдельным чекбоксом все, не убрав галочку, то остаются видимыми обе ссылки. Как убрать ссылку "Удалить", если появляется "Удалить всё".Пробовал прописать
$(b).on('click',function(){
$(inp).unbind('click',handler);
$('.ajax_all').css('display','none');
});

Не прокатило.Подскажите,плиз.
Ответить с цитированием
  #2 (permalink)  
Старый 01.08.2016, 19:47
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,990

class="self_del[]" - это круто )

name="self_del[]" value="0"
.....
name="self_del[]" value="0"

почему?

name="self_del_all" - зачем?

И почему не LABEL "Удалить всё" вместо двух ссылок?
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Событие по нажатии двух клавиш клавиатуры. lancer Events/DOM/Window 11 08.01.2017 14:11
Восторг в античной ForYourself ювелирные изделия тибетской или дать как подарок whistle123 Events/DOM/Window 0 03.12.2012 10:09
одно действие на 2 события vladimircape Events/DOM/Window 2 15.08.2012 12:28
Отловить событие simple Events/DOM/Window 3 11.05.2011 14:20
как проверить поддеружет браузер определенное событие? GOll Элементы интерфейса 9 24.07.2008 14:40