У меня есть таблица с несколькими столбцами, где один столбец является флажком. Всякий раз, когда этот флажок установлен, он отображает другую ячейку столбца справа от таблицы с помощью указателя вверх / вниз для установки значения.
Проблема, с которой я сталкиваюсь, заключается в том, что я не могу заставить spinner пройти мимо числа, которое находится в столбце Количество, которое у меня есть. Поэтому мне нужно вывести текущее значение столбца Quantity в соответствующей строке в переменную javascript и использовать ее с моей функцией spinner. Мне удалось получить значение с помощью getElementById
но оно получает только первое значение в таблице и не работает для каких-либо дополнительных значений в таблице. Я продолжаю пытаться getElementsByClassName
но мне не повезло.
Как я могу сделать это успешно?
PHP / HTML:
<table id="merchTable" cellspacing="5" class="sortable"> <thead> <tr class="ui-widget-header"> <th class="sorttable_nosort"></th> <th class="sorttable_nosort">Loc</th> <th class="merchRow">Report Code</th> <th class="merchRow">SKU</th> <th class="merchRow">Special ID</th> <th class="merchRow">Description</th> <th class="merchRow">Quantity</th> <th class="sorttable_nosort">Unit</th> <th style="display: none;" class="num">Quantity #</th> </tr> </thead> <tbody> <?php foreach ($dbh->query($query) as $row) {?> <tr> <td class="ui-widget-content"><input type="checkbox" class="check" name="check"></td> <td class="loc ui-widget-content" id="loc-<?php echo intval ($row['Loc'])?>"><?php echo $row['Loc'];?></td> <td class="rp-code ui-widget-content" align="center" id="rp-code-<?php echo intval ($row['Rp-Code'])?>"><?php echo $row['Rp-Code'];?></td> <td class="sku ui-widget-content" id="sku-<?php echo intval ($row['SKU'])?>"><?php echo $row['SKU'];?></td> <td class="special-id ui-widget-content" align="center" id="special-id-<?php echo intval ($row['Special-ID'])?>"><?php echo $row['Special-ID'];?></td> <td class="description ui-widget-content" id="description-<?php echo intval ($row['Description'])?>"><?php echo $row['Description'];?></td> <td class="quantity ui-widget-content" align="center" id="quantity-<?php echo intval ($row['Quantity'])?>"><?php echo $row['Quantity'];?></td> <td class="unit ui-widget-content" id="unit-<?php echo intval ($row['Unit'])?>"><?php echo $row['Unit'];?></td> <td style="display: none;" class="quantity_num ui-widget-content"><input type="textbox" style="width: 100px;" class="spinner" name="value" id="test"></td> </tr> <?php } ?> </tbody> </table>
JavaScript … Я пытаюсь использовать значение с помощью переменной quantity
. Каждый раз, когда я выбираю флажок, console.log(quantity)
возвращается с undefined
:
$(function () { $(".check").change(function(){ $(this).closest('tr').find('td.quantity_num').toggle(this.checked); console.log($('input.check').is(':checked')); var quantity = document.getElementsByClassName('quantity').innerHTML; console.log(quantity); if($('input.check').is(':checked')) $(this).closest('table').find('th.num').toggle(true); else $(this).closest('table').find('th.num').toggle(false); $( ".spinner" ).spinner({ spin: function( event, ui ) { if ( ui.value > quantity ) { $( this ).spinner( "value", quantity ); return false; } else if ( ui.value <= 0 ) { $( this ).spinner( "value", 0 ); return false; } } }); }); });