Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 20.11.2014, 13:35
Кандидат Javascript-наук
Отправить личное сообщение для zoOmer Посмотреть профиль Найти все сообщения от zoOmer
 
Регистрация: 21.05.2013
Сообщений: 131

Появление кнопки «удалить отмеченные» при нажатии одного checkbox
Доброе утро знатоки.

Есть скрипт появление кнопки удалить отмеченные при нажатии одного из checkbox

http://jsfiddle.net/v4SBr/

Но он почему то работает только в фибле.

Подскажите почему так?
И как сделать чтоб работал везде.
Ответить с цитированием
  #2 (permalink)  
Старый 20.11.2014, 15:42
Профессор
Отправить личное сообщение для jsnb Посмотреть профиль Найти все сообщения от jsnb
 
Регистрация: 15.03.2014
Сообщений: 561

jQuery небось не подключил?
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<style>
.hidden { display: none; }
</style>

<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>

</head>
<body>
<form id="form">
    <input type="checkbox" id="cb1"/> <label for="cb1">Checkbox 1</label>
    <input type="checkbox" id="cb2"/> <label for="cb2">Checkbox 2</label>
    <input type="checkbox" id="cb3"/> <label for="cb3">Checkbox 3</label>
    <input type="checkbox" id="cb4"/> <label for="cb4">Checkbox 4</label>
    <button id="delete" class="hidden">Удалить отмеченные</button>
</form>        
<script>
$(function(){
 $('#form input:checkbox').change(function () {
    $('#delete').toggle($('#form input:checkbox:checked').length>0);
 }); 
});
</script>

</body>
</html>
Ответить с цитированием
  #3 (permalink)  
Старый 20.11.2014, 15:43
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Да не про то речь. "Фибля" ( ) оборачивает js код в обработчик window.onload . А ты не оборачиваешь. Либо опусти скрипт вниз, чтоб на момент его выполнения твои чекбоксы уже загрузились, либо оберни в $(document).ready()
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #4 (permalink)  
Старый 20.11.2014, 15:44
Кандидат Javascript-наук
Отправить личное сообщение для zoOmer Посмотреть профиль Найти все сообщения от zoOmer
 
Регистрация: 21.05.2013
Сообщений: 131

jsnb, подключил

вот тут даже не робить

http://jsbin.com/qiyudaladu/1/edit
Ответить с цитированием
  #5 (permalink)  
Старый 20.11.2014, 15:46
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

zoOmer, выполнение скрипта не откладывается до полной загрузки страницы. Поэтому скрипт отрабатывает до того, как появятся твои чекбоксы, и по-этому не работает как задумано )
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #6 (permalink)  
Старый 20.11.2014, 15:50
Кандидат Javascript-наук
Отправить личное сообщение для zoOmer Посмотреть профиль Найти все сообщения от zoOmer
 
Регистрация: 21.05.2013
Сообщений: 131

danik.js,
<!DOCTYPE HTML>
<html>
<head>
<meta charset="utf-8">
<style>
.hidden { display: none; }
</style>

<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>

</head>
<body>
<form id="form">
    <input type="checkbox" id="cb1"/> <label for="cb1">Checkbox 1</label>
    <input type="checkbox" id="cb2"/> <label for="cb2">Checkbox 2</label>
    <input type="checkbox" id="cb3"/> <label for="cb3">Checkbox 3</label>
    <input type="checkbox" id="cb4"/> <label for="cb4">Checkbox 4</label>
    <button id="delete" class="hidden">Удалить отмеченные</button>
</form>        
<script>
$(document).ready(function(){
$('#form input:checkbox').change(function () {
$('#delete').toggle($('#form input:checkbox:checked').length>0);
 }); 
});
 
</script>

</body>
</html>

так?
Ответить с цитированием
  #7 (permalink)  
Старый 20.11.2014, 15:54
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Ну если скрипт внизу, то ready ждать не нужно. Ну и либу jquery можешь тоже внизу подключать - так быстрей страница отображается. Если это конечно тебе важно )
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #8 (permalink)  
Старый 20.11.2014, 15:57
Кандидат Javascript-наук
Отправить личное сообщение для zoOmer Посмотреть профиль Найти все сообщения от zoOmer
 
Регистрация: 21.05.2013
Сообщений: 131

danik.js, Даже если в head ставлю не работает((

http://jsbin.com/qiyudaladu/1/edit?html,output
Ответить с цитированием
  #9 (permalink)  
Старый 20.11.2014, 16:01
Профессор
Отправить личное сообщение для kostyanet Посмотреть профиль Найти все сообщения от kostyanet
 
Регистрация: 23.10.2010
Сообщений: 2,718

ТС, не тупите, втыкайте свой скрипт сразу как только чек-боксы перечислены и все будет работать.

Сначала в DOM появляется чек, затем его хавает js. А если наоборот, то js обломится.
Ответить с цитированием
  #10 (permalink)  
Старый 20.11.2014, 16:03
Профессор
Отправить личное сообщение для jsnb Посмотреть профиль Найти все сообщения от jsnb
 
Регистрация: 15.03.2014
Сообщений: 561

Я так и не понял, что у автора не работает. Вроде уже и код тут постился который прекрасно эту кнопку скрывает/раскрывает, а он всё недоволен.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Установить checkbox при нажатии на input SLameN Элементы интерфейса 5 21.03.2014 10:10
смена картинок при нажатии sdff Общие вопросы Javascript 15 08.02.2014 17:08
Событие onClick при нажатии пункта меню Lex4e Общие вопросы Javascript 1 25.06.2010 18:31
Смена изображений при нажатии кнопки. Rel60 Общие вопросы Javascript 1 14.09.2009 11:05
Проверка статуса checkbox при xmlhttprequest vvsh AJAX и COMET 3 06.08.2009 15:51