Javascript-форум (https://javascript.ru/forum/)
-   jQuery (https://javascript.ru/forum/jquery/)
-   -   Копирование текста чекбокса (https://javascript.ru/forum/jquery/44533-kopirovanie-teksta-chekboksa.html)

werty1001 23.01.2014 17:28

Копирование текста чекбокса
 
Здравствуйте, мне нужно сделать, чтобы в заголовок копировался текст выбранного чекбокса. Вот наглядно накидал, но есть две проблемы, как привязать это только к тому заголовку дива, в котором выбирают чекбоксы, сейчас не корректно, копируется в оба заголовка. И еще, если выбрать чекбоксы, а потом убрать галочки заголовок будет пустой, как сделать, чтобы он обратно становился с тем же текстом, что был. Заранее спасибо, кто поможет.

$('.select .option label input').change(function() {
  $(this).parent("label").parent("div").parent("div").children("b").text( $('input:checked').parent("label").text()  );
});

<div class="select">
      <b>Выбор</b>
      <div class="option">
       <label><input type="checkbox" /> текст 1</label>
       <label><input type="checkbox" /> текст 2</label>
       <label><input type="checkbox" /> текст 3</label>
       <label><input type="checkbox" /> текст 4</label>
      </div>
     </div>


     <div class="select">
      <b>Выбор</b>
      <div class="option">
       <label><input type="checkbox" /> текст 1</label>
       <label><input type="checkbox" /> текст 2</label>
       <label><input type="checkbox" /> текст 3</label>
       <label><input type="checkbox" /> текст 4</label>
      </div>      
     </div>


Или ссылка на jsfiddle

danik.js 23.01.2014 17:43

http://jsfiddle.net/danya_postfactum/P5GdY/1/

рони 23.01.2014 18:17

werty1001,
вариант...:write:
<!DOCTYPE HTML>
<html>

<head>

  <meta charset="utf-8">
  <title>demo</title>
   <script src="http://code.jquery.com/jquery-1.9.1.js"></script>
<script>
$(function () {
    $(".select").on("click", "input:checkbox", function (a) {
        var b = a.delegateTarget;
        a = $("b", b);
        !a.data("old") && a.data("old", a.text());
        b = $(":checked", b).parent().text() || a.data("old");
        a.text(b)
    });
})
</script>

</head>

<body>
<div class="select">
      <b>Выбор1</b>
      <div class="option">
       <label><input type="checkbox" /> текст 1</label>
       <label><input type="checkbox" /> текст 2</label>
       <label><input type="checkbox" /> текст 3</label>
       <label><input type="checkbox" /> текст 4</label>
      </div>
     </div>


     <div class="select">
      <b>Выбор2</b>
      <div class="option">
       <label><input type="checkbox" /> текст 1</label>
       <label><input type="checkbox" /> текст 2</label>
       <label><input type="checkbox" /> текст 3</label>
       <label><input type="checkbox" /> текст 4</label>
      </div>
     </div>
</body>
</html>

werty1001 23.01.2014 18:47

danik.js, рони

Благодарю за помощь.

рони 23.01.2014 20:16

danik.js,
не лезь в мои посты если не хочешь указать на ошибки

danik.js 23.01.2014 20:41

рони, я никуда не лез, я воспользовался системой оценки репутации. Она существует именно для выражения своего отношения к посту. К тому же я ясно прокомментировал причину.
А вот мы сейчас лезем со своими проблемами в чужой топик. Есть же ЛС.

Разверну мысль минуса: считаю что на форуме нужно давать нормальный код. Если тебе лень писать нормальный код - ну не пости ты код. Ну или не возмущайся за минусы. В то, что ты не умеешь писать имена переменных я не верю. Разве ты не знаешь слов event, target, text?

ksa 24.01.2014 11:17

рони, минусони его и вы в расчете... :D

Цитата:

Сообщение от danik.js
Разве ты не знаешь слов event, target, text?

Нашел к чему придраться... :(

danik.js 24.01.2014 11:28

Цитата:

Сообщение от ksa
Нашел к чему придраться

Сразу видно - код ты не читаешь. Ибо невозможно читать все эти a b c не матюкаясь. Это write-only код, ему не место тут на форуме.

ksa 24.01.2014 11:28

danik.js, у меня, например, основной язык вообще по 1-2-м символам понимает, что за команда или функция (из языка) используется...
Т.о. применение 1-2-х буквенных переменных для меня норма.

Пример процедурки
INFO(Urn,Name) ; ~ Записать информацию ~
 n i,j,k,key
 ; Urn  - urn гражданина 
 ; Name - имя переменной с текстом
 s:$g(Name)="" Name="txt"
 s key=$$Index^ASYS("FIO",Urn,,idset)
 s i=$o(@info@(key,"Txt",""),-1)
 s:i'="" i=i+1
 s @info@(key,"Urn")=Urn
 i $i(@info@(key,"All"))
 s j=""
 f k=1:1 s j=$o(@Name@(j)) q:j=""  s @info@(key,"Txt",i+k)=@Name@(j)
 q

И любой мало-мальски опытный кашевар его запросто поймет...

ksa 24.01.2014 11:29

Цитата:

Сообщение от danik.js
Сразу видно - код ты не читаешь. Ибо невозможно читать все эти a b c не матюкаясь.

Я специально вернулся и пересмотрел его код. :D
А потом написал сообщение. :)

Цитата:

Сообщение от danik.js
Это write-only код, ему не место тут на форуме.

По-мне так это крайность... :)

рони 24.01.2014 11:45

danik.js,
не место на форуме вашему отношению ко всем кто неумеет пользоваться отладчиком хрома считать идиотами и лентяями, я неумею им пользоваться, я непонимаю половину слов что говорится на форуме, особенно корифеями, но это не мешает мне находить решения, а то что я неумею коментировать и незнаю как и что назвать правильно - извиняте, но никого кроме вас это не цепляет.

danik.js 24.01.2014 13:45

Цитата:

Сообщение от рони
никого кроме вас это не цепляет.

Дык если бы его кто-то пытался прочесть )) Главное дали готовый код - а как он работает пофигу. Тем более что нифига не потятно среди этих запутанных однобуквенных переменных. Что уж там, я далеко не чайник, но и мне приходится вглядываться в твой код, чтоб понять что к чему.
Как по мне - это даже в какой-то степени выражение неуважения к читающим твои посты. Тот же уровень что и неотформатированный код, вставляемый некоторыми форумчанами, которым плевать на всех, лишь бы дали готовый код.

рони 24.01.2014 14:17

:write: письмо на деревню данику ...
Цитата:

Сообщение от danik.js
Главное дали готовый код

главное показали что решение есть - а разобраться в 4 строках кода
Цитата:

Сообщение от danik.js
приходится вглядываться в твой код, чтоб понять что к чему

говорит о том что вы просто неумеите читать код без подсказок со стороны инструментария или другого программиста, нет у меня исходников с другими переменными. Благодаря вам узнаю много нового, вот сегодня узнал что пишу в стиле
Цитата:

Сообщение от danik.js
write-only код

, вы бы книжку написали с картинками как и зачем нужен отладчик и куда там жать на чего, ато меня в гугле забанили, может с ваших обьяснений просветлеет, ато читаю читаю и всё бестолку.

qwe88 12.04.2015 02:27

Подскажите, пожалуйста, как убрать
Цитата:

<b></b>
из div-a, что бы работало?


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