Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #11 (permalink)  
Старый 19.04.2018, 16:21
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Сообщение от jfox
как сделать вывод в консоль тех артикулов, которые он не отметил, плюс сколько количество отмеченных чекбоксов.
пост №3 строка 70.
Ответить с цитированием
  #12 (permalink)  
Старый 19.04.2018, 16:26
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

jfox,
а к чему эти мытарства, почему не сделать артикул и флажок единым целым? Какой смысл прятать флажок и упорно решать проблемы?
Ответить с цитированием
  #13 (permalink)  
Старый 20.04.2018, 21:47
Новичок на форуме
Отправить личное сообщение для jfox Посмотреть профиль Найти все сообщения от jfox
 
Регистрация: 16.04.2018
Сообщений: 8

Сообщение от laimas Посмотреть сообщение
jfox,
а к чему эти мытарства, почему не сделать артикул и флажок единым целым? Какой смысл прятать флажок и упорно решать проблемы?
А вот это уже вопрос не ко мне, а к самой CMS. Там так сделано. Вообще скрипт получился от части рабочим. Чекбокс там для визуализации по идеи. Когда отмечаешь его то он... не отмечается)) Мне еще пришлось дописать параметр для добавления класса.
Ответить с цитированием
  #14 (permalink)  
Старый 20.04.2018, 23:14
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от jfox
А вот это уже вопрос не ко мне, а к самой CMS. Там так сделано.
А что сложно самому дописать человечески, вы же правите и добавляете свое. Что сложно сделать так:

<td class="min-width drag-handle"><input id="6636" type="checkbox"></td>
<td class="s-product-col-sku" title="Код артикула"><label for="6636">21400</label></td>

а класс просто переключать toggle?

Последний раз редактировалось laimas, 21.04.2018 в 00:15.
Ответить с цитированием
  #15 (permalink)  
Старый 12.07.2018, 09:59
Новичок на форуме
Отправить личное сообщение для jfox Посмотреть профиль Найти все сообщения от jfox
 
Регистрация: 16.04.2018
Сообщений: 8

Сообщение от рони Посмотреть сообщение
пост №3 строка 70.
Я имел ввиду вывести те артикулы, которые он не отметил из моего списка артикулов(помещаемые в массив). В вашем коде он выводит вообще все не отмеченные артикулы со страницы.

Последний раз редактировалось jfox, 12.07.2018 в 10:15.
Ответить с цитированием
  #16 (permalink)  
Старый 12.07.2018, 10:16
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

Сообщение от jfox
Я имел ввиду вывести те артикулы, которые он не отметил из моего списка артикулов.
Сообщение от jfox
Задача в том, чтобы выделить определенные чекбоксы, в зависимости от артикула.
не понимаю
Ответить с цитированием
  #17 (permalink)  
Старый 12.07.2018, 10:58
Профессор
Отправить личное сообщение для Dilettante_Pro Посмотреть профиль Найти все сообщения от Dilettante_Pro
 
Регистрация: 27.11.2015
Сообщений: 2,899

Сообщение от jfox
не отметил из моего списка артикулов(помещаемые в массив)
М.б. артикулы из массива, которых нет на странице?
Ответить с цитированием
  #18 (permalink)  
Старый 12.07.2018, 12:27
Новичок на форуме
Отправить личное сообщение для jfox Посмотреть профиль Найти все сообщения от jfox
 
Регистрация: 16.04.2018
Сообщений: 8

Сообщение от рони Посмотреть сообщение
не понимаю
Сообщение от рони Посмотреть сообщение
не понимаю
На сайте куча артикулов, но мне нужно отметить только некоторые из них. Те, которые я хочу отметить я указываю в prompt. Проблема в том, что некоторых артикулов может не оказаться на сайте и именно эти артикулы мне нужно, чтобы выводило в лог.

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

Например Велосипед 1 имеет артикулы 20400(красный цвет) и 20452(синий цвет). Я добавляю в prompt два этих артикула, но чекбоксом он отметит мне только 20400, а 20452 он(скрипт) пропустит, потому что не сможет найти. И вот скрипт в логах должен мне указать, что артикул с номером 20452 не отметился. Только вот таких артикулов бывает много.

Забегу вперед и отвечу на вопрос "А зачем тебе отмечать 20452, если он находится внутри товара с 20400 артикулом и уже считается отмеченным?"

Ответ: Велосипед 2 имеет первый артикул 0001, а второй 0005. Мне нужен 0005 и я его добавляю в prompt, однако 0001 я не добавляю, потому что я вообще знать не знаю, что 0005 сидит в 0001.

Как-то так.
Ответить с цитированием
  #19 (permalink)  
Старый 12.07.2018, 12:53
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,124

jfox,
<!DOCTYPE html>

<html>
<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  .yellow {
       background-color: #FFFF00;
  }
  .info {
      color: #FF0000;
  }

  </style>


</head>

<body>
<table>
    <tbody>
        <tr>
            <th class="min-width"><input type="checkbox" class="s-select-all" data-count="6116"></th>
            <th>Код артикула</th>
            <th>Название</th>
            <th>Цена</th>
            <th>В наличии</th>
        </tr>
        <tr class="product ui-droppable ui-draggable" data-product-id="6636">
            <td class="min-width drag-handle"><input type="checkbox"></td>
            <td class="s-product-col-sku" title="Код артикула">21400</td>
            <td class="drag-handle s-product-name">Велосипед</td>
            <td title="Цена">50000</td>
            <td title="В наличии">5</td>
        </tr>
        <tr class="product ui-droppable ui-draggable" data-product-id="6637">
            <td class="min-width drag-handle"><input type="checkbox"></td>
            <td class="s-product-col-sku" title="Код артикула">21401</td>
            <td class="drag-handle s-product-name">Велосипед</td>
            <td title="Цена">12000</td>
            <td title="В наличии">5</td>
        </tr>
        <tr class="product ui-droppable ui-draggable" data-product-id="6638">
            <td class="min-width drag-handle"><input type="checkbox"></td>
            <td class="s-product-col-sku" title="Код артикула">21402</td>
            <td class="drag-handle s-product-name">Велосипед</td>
            <td title="Цена">60000</td>
            <td title="В наличии">5</td>
        </tr>
        <tr class="product ui-droppable ui-draggable" data-product-id="6639">
            <td class="min-width drag-handle"><input type="checkbox"></td>
            <td class="s-product-col-sku" title="Код артикула">21403</td>
            <td class="drag-handle s-product-name">Велосипед</td>
            <td title="Цена">13300</td>
            <td title="В наличии">5</td>
        </tr>
        <tr class="product ui-droppable ui-draggable" data-product-id="6640">
            <td class="min-width drag-handle"><input type="checkbox"></td>
            <td class="s-product-col-sku" title="Код артикула">21404</td>
            <td class="drag-handle s-product-name">Велосипед</td>
            <td title="Цена">33200</td>
            <td title="В наличии">5</td>
        </tr>
    </tbody>
</table>
<p class="info"></p>
<script>
var a = ["21401","21403","21404", "20400", "20452"], b = [], err;
[].forEach.call(document.querySelectorAll('.product'), function(tr) {
var td = tr.querySelector('.s-product-col-sku');
var kod = td.textContent.trim();
var checked = ~a.indexOf(kod);
checked && b.push(kod);
tr.querySelector('input').checked = checked;
td.classList[checked ? 'add' : 'remove']("yellow")
});
err = a.filter(function(e) {
   return b.indexOf(e) == -1
})
document.querySelector('p.info').innerHTML = err

  </script>
</body>
</html>
Ответить с цитированием
  #20 (permalink)  
Старый 12.07.2018, 14:17
Новичок на форуме
Отправить личное сообщение для jfox Посмотреть профиль Найти все сообщения от jfox
 
Регистрация: 16.04.2018
Сообщений: 8

рони, в коде более-менее разобрался и подстроил под себя.
Благодарю за помощь.
Ответить с цитированием
Ответ



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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Поиск фрагмента текста введенного через prompt Fireyon Общие вопросы Javascript 2 17.10.2017 17:02
4 чекбокса, как при выборе вставить значение через запятую espltd Элементы интерфейса 2 09.09.2015 09:07
Значение переменной через запятую DDSSDD Серверные языки и технологии 41 16.10.2014 15:01
Поиск необходимого текста через id Dorian_bs Общие вопросы Javascript 11 19.06.2012 00:16
Поиск в массиве через JavaScript Noran Общие вопросы Javascript 0 10.08.2008 17:31