0

動的に生成される次のリストがあります。製品の数量入力が利用可能な数量よりも少ない場合、単純な Jquery 検証を行う機能が必要です。ユーザーに警告したいと思います。ユーザーがフォームを送信しようとする前に検証を実行したいので、使用したいイベントはおそらく .change() イベントです。私が抱えている問題は、ID が動的に駆動されるため、すべてのソリューションをキャッチする必要があることです。どこから始めればよいかわからない。

<ul>
  <li>
    <input class="shipment_qty_field" id="qty_product_1" type="text" />
  </li>
  <li></li>
  <li></li>
  <li id ="avail_qty_product_1></li>
</ul>
<ul>
  <li>
    <input class="shipment_qty_field" id="qty_product_2" type="text" />
  </li>
  <li></li>
  <li></li>
  <li id="avail_qty_product_2"></li>
</ul>   
<ul>
  <li>
    <input class="shipment_qty_field" id="qty_product_3" type="text" />
  </li>
  <li></li>
  <li></li>
  <li id="avail_qty_product_3"></li>
</ul>
4

1 に答える 1

1

id = "avail_qty_product_xx" のすべての li を取得し、次のような「data-qty」として入力タグを保持する li に値を貼り付けます。

  <li class="qty_container" data-qty="3">
    <input class="shipment_qty_field" type="text" />
  </li>

次に、li の変更ハンドラーを追加できます。

$('li.qty_container input').change(function() {
  threshold = parseInt($(this).closest('li').data('qty'))
   if(parseInt($(this).val()) > threshold) {
      alert('threshold exceeded!')
   }
})

于 2012-10-04T15:16:09.687 に答える