Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 18.10.2013, 11:30
Интересующийся
Отправить личное сообщение для carroty Посмотреть профиль Найти все сообщения от carroty
 
Регистрация: 04.10.2013
Сообщений: 10

Продублировать значение input’a в других input’ax
Здравствуйте, форумчане!
Вот такая незадача, при клике на чекбокс «Время» (all_time1) нужно внесенное значение продублировать во всех инпутах, где отмечены чекбоксы «Дни» , примерно как на картинке чекеты.jpg. По клику на all_time1 перебрать в each все значения дней и времени? А дальше заклинило))) Подскажите люди добрые мысль умную, как такое реализовать.
Благодарю за внимание!
html-форма
<form id="timetable_city" name="timetable_city" action="/admin/timetable/add-timetable-city" method="post">
<input type="hidden" name="timetable_id" value="" id="timetable_id"></dd>
<input type="checkbox" name="day_1_ukr" id="day_1_ukr" value="yes" data-rel="1">
<input type="checkbox" name="day_2_ukr" id="day_2_ukr" value="yes" data-rel="2">
<input type="checkbox" name="day_3_ukr" id="day_3_ukr" value="yes" data-rel="3">
<input type="checkbox" name="day_4_ukr" id="day_4_ukr" value="yes" data-rel="4">
<input type="checkbox" name="day_5_ukr" id="day_5_ukr" value="yes" data-rel="5">
<input type="checkbox" name="day_6_ukr" id="day_6_ukr" value="yes" data-rel="6">
<input type="checkbox" name="day_7_ukr" id="day_7_ukr" value="yes" data-rel="7">
<input type="text" name="time_1_ukr" id="time_1_ukr" value="" data-rel="1">
<input type="text" name="time_2_ukr" id="time_2_ukr" value="" data-rel="2">
<input type="text" name="time_3_ukr" id="time_3_ukr" value="" data-rel="3">
<input type="text" name="time_4_ukr" id="time_4_ukr" value="" data-rel="4">
<input type="text" name="time_5_ukr" id="time_5_ukr" value="" data-rel="5">
<input type="text" name="time_6_ukr" id="time_6_ukr" value="" data-rel="6">
<input type="text" name="time_7_ukr" id="time_7_ukr" value="" data-rel="7">
</form>
<div class="switch_checkbox all_times1">
	<input type="checkbox" class="all_time1"/>
	<label><i></i></label>
</div>
Ответить с цитированием
  #2 (permalink)  
Старый 18.10.2013, 11:44
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,105

Сообщение от carroty
нужно внесенное значение
куда? в любой инпут?
Ответить с цитированием
  #3 (permalink)  
Старый 18.10.2013, 11:56
Аватар для ОлегА
Профессор
Отправить личное сообщение для ОлегА Посмотреть профиль Найти все сообщения от ОлегА
 
Регистрация: 25.08.2011
Сообщений: 420

$(function(){
$('.all_time1').click(function(){

if($(this).is(':checked')){
      var $time = '12:30'
      $('#timetable_city input[type=checkbox]:checked').each(function(){
            index = $(this).attr('data-rel')

  $('#timetable_city input[type=text][data-rel='+index+']').val($time)
      })
} else {
  $('#timetable_city input[type=text]').val('')
}

})
})
Ответить с цитированием
  #4 (permalink)  
Старый 18.10.2013, 11:57
Интересующийся
Отправить личное сообщение для carroty Посмотреть профиль Найти все сообщения от carroty
 
Регистрация: 04.10.2013
Сообщений: 10

Сообщение от рони Посмотреть сообщение
куда? в любой инпут?
Внесенное значение из любого инпута time продублировать в тех инпутах time, где отмечены дни
Ответить с цитированием
  #5 (permalink)  
Старый 18.10.2013, 12:20
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,105

carroty,
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
</head>

<body>
<form id="timetable_city" name="timetable_city" action="/admin/timetable/add-timetable-city" method="post">
<input type="hidden" name="timetable_id" value="" id="timetable_id">
<input type="checkbox" name="day_1_ukr" id="day_1_ukr" value="yes" data-rel="1">
<input type="checkbox" name="day_2_ukr" id="day_2_ukr" value="yes" data-rel="2">
<input type="checkbox" name="day_3_ukr" id="day_3_ukr" value="yes" data-rel="3">
<input type="checkbox" name="day_4_ukr" id="day_4_ukr" value="yes" data-rel="4">
<input type="checkbox" name="day_5_ukr" id="day_5_ukr" value="yes" data-rel="5">
<input type="checkbox" name="day_6_ukr" id="day_6_ukr" value="yes" data-rel="6">
<input type="checkbox" name="day_7_ukr" id="day_7_ukr" value="yes" data-rel="7"><br>
<input type="text" name="time_1_ukr" id="time_1_ukr" value="" data-rel="1">
<input type="text" name="time_2_ukr" id="time_2_ukr" value="" data-rel="2">
<input type="text" name="time_3_ukr" id="time_3_ukr" value="" data-rel="3">
<input type="text" name="time_4_ukr" id="time_4_ukr" value="" data-rel="4">
<input type="text" name="time_5_ukr" id="time_5_ukr" value="" data-rel="5">
<input type="text" name="time_6_ukr" id="time_6_ukr" value="" data-rel="6">
<input type="text" name="time_7_ukr" id="time_7_ukr" value="" data-rel="7">
</form>
<div class="switch_checkbox all_times1">
	<input type="checkbox" class="all_time1" />
	<label><i>Время</i></label>
</div>
<script>
var time = document.querySelector(".all_time1"),
    times = document.querySelectorAll("[id^=time_]"),
    days = document.querySelectorAll("[id^=day_]");
time.onclick = function () {
    var b = "";
    if (time.checked==!0) {
        for (var a = 0; a < times.length; a++)
            if (times[a].value) {
                b = times[a].value;
                break
            }
        for (a = 0; a < times.length; a++)!0 == days[a].checked && (times[a].value = b)
    }
};
</script>
</body>

</html>
Ответить с цитированием
  #6 (permalink)  
Старый 18.10.2013, 12:33
Интересующийся
Отправить личное сообщение для carroty Посмотреть профиль Найти все сообщения от carroty
 
Регистрация: 04.10.2013
Сообщений: 10

Я уже насочиняла
$('.all_time1').click(function(){
    var index = '';
    var time = '';

    if($(this).is(':checked')){
          $('#timetable_city input[type=text]').each(function(){                      
              if ($(this).val() != '')
                  {
                      time = $(this).val();
                  }
          });                
          $('#timetable_city input[type=checkbox]:checked').each(function(){
                index = $(this).attr('data-rel');

      $('#timetable_city input[type=text][data-rel='+index+']').val(time)
          })
    }
    else {
        $('#timetable_city input[type=text]').val('')
}
});

рони, у вас более правильно выглядит, спасибо за вариант
Всем спасибо за участие!

Последний раз редактировалось carroty, 18.10.2013 в 12:35.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Выводить значение раньше переменных Гробовщик Общие вопросы Javascript 11 10.09.2013 08:42
В contains() не подставляется значение переменной Heger jQuery 2 11.12.2011 20:26
Значение переменной salex009 jQuery 1 05.12.2011 16:55