2016-12-15 11 views
0

これは、jspファイル(またはhtml)内の各ループに対して、配列であるデータのセットを反復処理するループであり、そのループにはselectオプションを選択するタグ。これは、行を表示すると仮定し、各行には選択オプションがあります。私がしたいのは、selectタグの値の各インスタンスを取得することです。私は多くの異なる型の識別子を持つJQueryでこれを試してみましたが、どのように試してみても、何も返されません、または定義タグの最初のインスタンスが返されますが、以下のものは返されません。誰でも助けてくれますか?foreachループ内のselectタグの値を取得する

<c:forEach var="temp" items="${data}" id="loop"> 

    <tr><td> 
    <div class="dropdown"> 
     <select class="btn btn-secondary dropdown-toggle select" name="${temp.id}" > 
      <option value="1" class="dropdown-item btn btn-secondary dropdown-toggle" > Pending </option> 
      <option value="2" class="dropdown-item btn btn-secondary dropdown-toggle" > Approve </option> 
      <option value="3" class="dropdown-item btn btn-secondary dropdown-toggle" > Deny </option> 
     </select> 
    </div> 
    </td></tr> 
</c:forEach> 
/***************************************************** 
       JQuery Code 
*****************************************************/ 
$("#update").click(function() { 
     var index = $("select.statues").val(); 
     console.log(index); 
    /* $.each(index, function(i, item){ 
     console.log(item); 
    });*/ 
}); 

更新idは、すべてのhtmlのものの後に来るinputタグである

答えて

2

$("select.statues").val();はあなたの現在の選択したオプションを取得します。

最初にすべての選択をフェッチし、それらを反復して対応する値を取得する必要があります。

あなたは

$("#update").click(function() { 
    var $selects = $(".select"); 
    console.log($selects); 
    $.each($selects, function(i, item) { 
    // selected value 
    var $currSelect = $(item) 
    console.log($currSelect.val()); 
    // Selected option text 
    console.log($currSelect.find('option:selected').text()); 
    }); 
}); 

Check Fiddle

+0

を探している私は混乱しています、この正確に何を返していますか?私は自分のコードでそれを試して、ブラウザのコンソールは私にオプション(オプションではない)が定義されていないと言っています。 – anonuser1234

+0

オプションを技術的に選択しているので、 '$ selected'と置き換えました。 –

+0

セレクタ '$(" select.statues ")'も間違っています。それは 'select'クラスですが' status'はありません –

関連する問題