これは私の最初の質問ですので、ルール違反があれば許してください。これは具体的にはjqueryに関連する質問であり、jqueryに関する知識は限られています。ループ内で動的に作成されたjqueryを使用してフォームから選択オプション値を取得
FORループで動的に作成されたフォームからSELECT要素の値を取得しようとしています。問題は、私が最初のフォームの値を取得できる間、次のフォームのセットに対して同じ値を戻していることです。
たとえば、FORループを使用して、複数の非表示の入力フィールド、1つの選択フィールド(値は1,2,3などの静的な値)と送信ボタンを含む5つの動的フォームを生成しています。 jquery attr()関数を使用して、異なるフォームの隠された入力フィールドの値を取得する際に問題はありません。しかし、SELECTフィールドにこのattr()関数を適用すると、最初のフォームでのみ機能します。後続のすべてのフォームは、最初のフォームと同じ値を返します。
var value= $('option:selected', '.select-class').attr('data-value');
ループ内で複数のフォームのSELECTフィールドの値を取得する方法を教えてください。
ありがとうございました
編集:以下、コード全体を貼り付けました。それは元のものから変更されていますが、問題はまだ同じです。アンカータグ(ボタンの代わりに)とwhileループ(ループの代わりに)を使用してデータを送信していることがわかりました。コードを見てください。
私は、次のようにwhileループ内の各アンカータグのデータ属性の値を取得することができていますjqueryの使用<?php while($fetch=$query->fetch()) { ?>
<select class="form-control sel_qty" name="product_qty" >
<option value="1" data-qty="1">1</option>
<option value="2" data-qty="2">2</option>
<option value="3" data-qty="3">3</option>
<option value="4" data-qty="4">4</option>
<option value="5" data-qty="5">5</option>
</select>
<a href='#' class="btn btn-primary cart_submit"
data-code="<?php echo $fetch['product_code']; ?>"
data-title="<?php echo $fetch['title']; ?>"
data-price="<?php echo $fetch['price']; ?>"
data-url="<?php echo $fetch['url']; ?>" >
Submit
</a>
<?php } ?>
:
var product_code= $(this).attr("data-code");
var product_title= $(this).attr("data-title");
var product_price= $(this).attr("data-price");
var product_url= $(this).attr("data-url");
しかし、どのように、私は内部の各select要素の値を取得するかをwhileループ。私は、最初のselect要素だけの値を取得することができ、後続の要素は取得できません。
var value= $('option:selected', '.sel_qty').attr('data-qty');
この上記のコードは、最初の値を取得しているあなたが投稿したコードは、あなたのループ内のコードであれば、あなたが提供した情報及び少量のコードに基づいてループ
: はないとあなたのような何かを行うことができ、あなたは何をしているか知っています。フォーム上のループの場合。 – Dhwani
あなたはコードを表示できますか(フル) – anshuVersatile