Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #21 (permalink)  
Старый 18.03.2017, 18:55
Профессор
Отправить личное сообщение для Sav2907 Посмотреть профиль Найти все сообщения от Sav2907
 
Регистрация: 15.09.2015
Сообщений: 180

рони,
Нет, выбрать можно все числа в блоке, а когда селект больше 0, то блокировать числа, а когда пусто, тогда снять класс check
Ответить с цитированием
  #22 (permalink)  
Старый 18.03.2017, 19:10
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Sav2907,
не понимаю
Ответить с цитированием
  #23 (permalink)  
Старый 18.03.2017, 19:19
Профессор
Отправить личное сообщение для Sav2907 Посмотреть профиль Найти все сообщения от Sav2907
 
Регистрация: 15.09.2015
Сообщений: 180

рони,
Выбираю числа в блоке, например 2 и 4.
Селект разблокируется.
В селект ставлю 10.
Числа блокируются, и я больше ничего не могу выбрать.
Ставлю в селект пусто.
Числа разблокируются.
Все числа белые, и селект снова заблокирован.
Ответить с цитированием
  #24 (permalink)  
Старый 18.03.2017, 19:41
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Sav2907,
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<style>
.table{
border-collapse: collapse;
}
.table td{
border: 1px solid #000;
padding: 10 10;
}
.check{
background: green;
}
.click{
cursor: pointer;
}
</style>
<table class="table">
  <tr>
    <td rowspan="3">1.</td>
    <td class="click">01</td>
    <td class="click">02</td>
    <td class="click">03</td>
    <td class="click">04</td>
    <td rowspan="3"><select class="num" disabled><option value=""></option><option value="10">10</option><option value="20">20</option><option value="30">30</option></select></td>
  </tr>
  <tr>
    <td class="click">05</td>
    <td class="click">06</td>
    <td class="click">07</td>
    <td class="click">08</td>
  </tr>
  <tr>
    <td class="click">09</td>
    <td class="click">10</td>
    <td class="click">11</td>
    <td class="click">12</td>
  </tr>
  <tr>
    <td rowspan="3">2.</td>
    <td class="click">13</td>
    <td class="click">14</td>
    <td class="click">15</td>
    <td class="click">16</td>
    <td rowspan="3"><select class="num" disabled><option value=""></option><option value="10">10</option><option value="20">20</option><option value="30">30</option></select></td>
  </tr>
  <tr>
    <td class="click">17</td>
    <td class="click">18</td>
    <td class="click">19</td>
    <td class="click">20</td>
  </tr>
  <tr>
    <td class="click">21</td>
    <td class="click">22</td>
    <td class="click">23</td>
    <td class="click">24</td>
  </tr>
</table>
<script>
var tr = $(".table tbody tr");
$(".num").each(function(indx, sel) {
var cl = $(".click", tr.slice(indx * 3, indx * 3 + 3)).on("click", function() {
        var disabled = !$(sel).val();
        $(this).toggleClass("check",disabled);
        disabled = !cl.is(".check");
        $(sel).prop("disabled", disabled);
        if(disabled){$(sel).val("")};
    })
});
</script>
Ответить с цитированием
  #25 (permalink)  
Старый 18.03.2017, 19:44
Профессор
Отправить личное сообщение для Sav2907 Посмотреть профиль Найти все сообщения от Sav2907
 
Регистрация: 15.09.2015
Сообщений: 180

рони,
Нет не то
Выбираю числа в блоке, например 2 и 4.
Селект разблокируется.
В селект ставлю 10.
Числа блокируются, и я больше ничего не могу выбрать.
Ставлю в селект пусто.
Числа разблокируются.
Все числа белые, и селект снова заблокирован.
Ответить с цитированием
  #26 (permalink)  
Старый 18.03.2017, 19:44
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Sav2907,
далее сами
Ответить с цитированием
  #27 (permalink)  
Старый 18.03.2017, 19:49
Профессор
Отправить личное сообщение для Sav2907 Посмотреть профиль Найти все сообщения от Sav2907
 
Регистрация: 15.09.2015
Сообщений: 180

После того как я выбрал число в селект, все числа от 1 до 12 блокируются.
Ставлю селект на пусто, и из всех чисел от 1 до 12 снимается класс check
И селект снова блокируется
Ответить с цитированием
  #28 (permalink)  
Старый 18.03.2017, 20:06
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Sav2907,
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<style>
.table{
border-collapse: collapse;
}
.table td{
border: 1px solid #000;
padding: 10 10;
}
.check{
background: green;
}
.click{
cursor: pointer;
}
</style>
<table class="table">
  <tr>
    <td rowspan="3">1.</td>
    <td class="click">01</td>
    <td class="click">02</td>
    <td class="click">03</td>
    <td class="click">04</td>
    <td rowspan="3"><select class="num" disabled><option value=""></option><option value="10">10</option><option value="20">20</option><option value="30">30</option></select></td>
  </tr>
  <tr>
    <td class="click">05</td>
    <td class="click">06</td>
    <td class="click">07</td>
    <td class="click">08</td>
  </tr>
  <tr>
    <td class="click">09</td>
    <td class="click">10</td>
    <td class="click">11</td>
    <td class="click">12</td>
  </tr>
  <tr>
    <td rowspan="3">2.</td>
    <td class="click">13</td>
    <td class="click">14</td>
    <td class="click">15</td>
    <td class="click">16</td>
    <td rowspan="3"><select class="num" disabled><option value=""></option><option value="10">10</option><option value="20">20</option><option value="30">30</option></select></td>
  </tr>
  <tr>
    <td class="click">17</td>
    <td class="click">18</td>
    <td class="click">19</td>
    <td class="click">20</td>
  </tr>
  <tr>
    <td class="click">21</td>
    <td class="click">22</td>
    <td class="click">23</td>
    <td class="click">24</td>
  </tr>
</table>
<script>
var tr = $(".table tbody tr");
$(".num").each(function(indx, sel) {
var cl = $(".click", tr.slice(indx * 3, indx * 3 + 3)).on("click", function() {
        if(sel.value) return;
        $(this).toggleClass("check");
        var disabled = !cl.is(".check");
        $(sel).prop("disabled", disabled);
    })
$(sel).on("change", function() {
  !sel.value && cl.removeClass("check") && $(sel).prop("disabled", true);
})

});
</script>
Ответить с цитированием
  #29 (permalink)  
Старый 18.03.2017, 20:08
Профессор
Отправить личное сообщение для Sav2907 Посмотреть профиль Найти все сообщения от Sav2907
 
Регистрация: 15.09.2015
Сообщений: 180

рони,
Вот, вот это оно, СПАСИБО
Ответить с цитированием
  #30 (permalink)  
Старый 18.03.2017, 20:15
Профессор
Отправить личное сообщение для Sav2907 Посмотреть профиль Найти все сообщения от Sav2907
 
Регистрация: 15.09.2015
Сообщений: 180

Последнее:
как при клике по числу, например от 1-12 получити класс abc? Для примера можно алертом
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<style>
.table{
border-collapse: collapse;
}
.table td{
border: 1px solid #000;
padding: 10 10;
}
.check{
background: green;
}
.click{
cursor: pointer;
}
</style>
<table class="table">
  <tr><td colspan="6" align="center" class="abc">1-12</td></tr>
  <tr>
    <td rowspan="3">1.</td>
    <td class="click">01</td>
    <td class="click">02</td>
    <td class="click">03</td>
    <td class="click">04</td>
    <td rowspan="3"><select class="num" disabled><option value=""></option><option value="10">10</option><option value="20">20</option><option value="30">30</option></select></td>
  </tr>
  <tr>
    <td class="click">05</td>
    <td class="click">06</td>
    <td class="click">07</td>
    <td class="click">08</td>
  </tr>
  <tr>
    <td class="click">09</td>
    <td class="click">10</td>
    <td class="click">11</td>
    <td class="click">12</td>
  </tr>
  <tr><td colspan="6" align="center" class="abc">13-24</td></tr>
  <tr>
    <td rowspan="3">2.</td>
    <td class="click">13</td>
    <td class="click">14</td>
    <td class="click">15</td>
    <td class="click">16</td>
    <td rowspan="3"><select class="num" disabled><option value=""></option><option value="10">10</option><option value="20">20</option><option value="30">30</option></select></td>
  </tr>
  <tr>
    <td class="click">17</td>
    <td class="click">18</td>
    <td class="click">19</td>
    <td class="click">20</td>
  </tr>
  <tr>
    <td class="click">21</td>
    <td class="click">22</td>
    <td class="click">23</td>
    <td class="click">24</td>
  </tr>
</table>
<script>
var tr = $(".table tbody tr");
$(".num").each(function(indx, sel) {
var cl = $(".click", tr.slice(indx * 4, indx * 4 + 4)).on("click", function() {
        if(sel.value) return;
        $(this).toggleClass("check");
        var disabled = !cl.is(".check");
        $(sel).prop("disabled", disabled);
    })
$(sel).on("change", function() {
  !sel.value && cl.removeClass("check") && $(sel).prop("disabled", true);
})

});
</script>
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
свойства объекта события Morr123 Элементы интерфейса 3 10.08.2016 06:36
При клике появлялся новый элемент (бесконечно) Eadweard Элементы интерфейса 3 16.02.2016 08:13
Запрет события Click на дочернем элементе, кот. находится за рамками родителя Smokvin Events/DOM/Window 11 10.11.2013 01:53
Интерактивная карта мира на jQuery - замена события при клике jacob0013 jQuery 2 28.05.2013 13:30
Дебаг js, или как найти обработчик события для тега jimm88 Events/DOM/Window 1 18.04.2012 15:11