Предотвратить получение 0 во входном типе тега=число

#javascript #html

Вопрос:

Я сохраняю html-элементы для таблицы корзины. Я не могу предотвратить получение значения 0 на входном идентификаторе=»qtyInput»

вот код javascript…

   var qtyInput = '<input id="qtyInput" class=" text-center" type="number" min="1" oninput="this.value = Math.abs(this.value)" style="width:50px;" id="qty_value" name="qty_value" value="'   productQty   '"><input type="hidden" id="productId" value="'   productId   '">'
                cartHtml  = '<tr><td><img src="../admin/img/product_images/'   productImg   '" style="width:50px"/></td><td>'   productName   '</td><td>'   productPrice   '</td><td>'   productTotal   '</td><td>'   qtyInput   '</td><td>'   deleteBtn   '</td></tr>';
 

код ajax

 function fetchCartData() {

        $.ajax({
          url: 'ajax_calls/fetch-cart.php',
          type: 'GET',
          dataType: 'json',
          success: function(response) {
            var cartHtml = "";
            if (response.data.length > 0) {
              $.each(response.data, function(key, item) {
                productId = item[0];
                var productImg = item[4];
                var productName = item[1];
                var productQty = item[2];
                var productPrice = parseFloat(item[3]).toFixed(2);
                var productTotal = parseFloat(item[3] * item[2]).toFixed(2);
                var deleteBtn = item[5];

                var qtyInput = '<input id="qtyInput" class=" text-center" type="number" min="1" oninput="this.value = Math.abs(this.value)" style="width:50px;" id="qty_value" name="qty_value" value="'   productQty   '"><input type="hidden" id="productId" value="'   productId   '">'
                cartHtml  = '<tr><td><img src="../admin/img/product_images/'   productImg   '" style="width:50px"/></td><td>'   productName   '</td><td>'   productPrice   '</td><td>'   productTotal   '</td><td>'   qtyInput   '</td><td>'   deleteBtn   '</td></tr>';
              });
              $("#cart-items-table").html(cartHtml);

              $("#sub-total").html(response.subTotal.toFixed(2));
              $("#grand-total").html(response.grandTotal.toFixed(2));

              // event binding for updateQty function
              $('#cart-items-table').on('keyup', '#qtyInput', function() {
                var pId = $(this).siblings("#productId").val();
                var qty = $(this).val();
                updateQty(pId, qty);
              });
            } else {
              cartHtml = '<div class="text-center"> <h4> Your Cart is Empty</h4></div>';
              $("#cart-table-html").html(cartHtml);
            }


            $("#cart_qty").html(response.totalCartQty);
            $("#cart_qty1").html(response.totalCartQty);
          } // /success
        }); // /ajax
  }
 

Я надеюсь, что вы могли бы мне помочь. Огромное спасибо

Комментарии:

1. Это не PHP, это JavaScript

2. Вот почему вам нужно провести проверку

3. минимальное значение»1″ не работает

4. Я удалил три из пяти тегов, которые вы использовали. Остальная часть вашего сайта может использовать PHP, Ajax и jQuery, но ни один из показанных кодов этого не делает.

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

Ответ №1:

 <input type="number" min=1 max=1000> 

Определенно, это сработает. Попробуй