2016-03-30 5 views
0

私はこのような状況があります。チェックボックスの値をJavaScriptに配列する方法

enter image description here

私がする必要がどのように選択したすべてのチェックボックスの値を取り、いくつかのJavaScript arrayで、最終的にはその後PHP sessionでそれらを置くことです。あなたは上記を参照できるよう

while($userRow=$resultForUsers->fetch_assoc()){ 
      $nameOfUser=$userRow['users_name']; 
      $userId=$userRow['user_facebook_id']; 
      $userFBPicture=$userRow['users_picture']; 
      echo " 
      <tr class='tr-data-users'> 
      <td class='text-center'> 
      <input type='checkbox' class='checkbox' value=$userId> 
      </td> 
      <td class='td-users text-center'> 
      <div class='input-group user-name-users'> 
      <img class='user-img-users v-t' src=$userFBPicture> 
      </div> 
      <div class='input-group user-name-users'> 
      <h5 id='no-margin'>$nameOfUser</h5> 
      </div> 
      <div class='input-group user-name-users'> 
      <img class='v-t' src='../img/link-icon.png'> 
      </div> 
      </td> 
      <td> 
      <p class='text-center'>$userId</p> 
      </td> 
      <td> 
      <p class='text-center'>113</p> 
      </td> 
      <td> 
      <p class='text-center'>19</p> 
      </td> 
      <td> 
      <p class='text-center'>19</p> 
      </td> 
      <td> 
      <p class='text-center'>39%</p> 
      </td> 
      <td> 
      <p class='text-center'>31.12.2013</p> 
      </td> 
      </tr>"; 
}?> 

だから、私のデータベース内の各ユーザーのために、私は、1行を生成していますが、各チェックボックスの値は、ユーザーのIDを持っている:私はこのようなコードを持っています。

<td class='text-center'> 
       <input type='checkbox' class='checkbox' value=$userId> 
</td> 

どこから始めたらいいのかわからないので、何も試していません。これについて本当にあなたの助けに感謝します。

+0

あなたは働いていないそのいかなるhttps://api.jquery.com/checked-selector/またはより良い読書からのjavascript/jqueryの – llamerr

答えて

0

あなたはjqueryの中:checkedセレクタ使用して、選択したすべてのチェックボックスを得ることができます。またあなたはjQueryの要素に.mapを使用することができます

var userIds = $.map($('input[type=checkbox]:checked'), function (cb, idx) { 
    // here you have the checkbox and you can get the value attribute 
    return $(cb).attr('value'); 
}); 

を:

var userIds = $('input[type=checkbox]:checked').map(function() { 
    // here this referes to the checkbox and you can get the value attribute 
    return $(this).attr('value'); 
}); 
+0

にいくつかの本を開始できません:S '$(ドキュメントを){ //ここにあなたはチェックボックスがあります。値の属性 return $(cb).attr( 'value'); }); console.log(userIds); }); 'Console.logには何も表示されません。私はいくつかのパラメータや何が欠けていますか? – Ognj3n

+0

ここでは何が効果がありませんか? – itzmukeshy7

+0

関数内で 'console.log(cb)'を実行できますか? – AKS

0

あなたは以下のようにjqueryのを使用していることを行うことができ、

var allVals = []; 
     $(".checkbox:checked").each(function() { 
      allVals.push($(this).val()); 
     }); 
0

これを試す;

function showChecked(){ 
 
    var userIds = $.map($('input[type=checkbox]:checked'), function (cb, idx) { 
 
    /* here you have the checkbox and you can get the value attribute */ 
 
    return $(cb).val(); 
 
    }); 
 
    console.log(userIds); 
 
    $('#checkedItems').html(userIds.join(', ')); 
 
    
 
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<td class='text-center'> 
 
       1 <input type='checkbox' class='checkbox' value="1"> 
 
</td> 
 
<td class='text-center'> 
 
       2 <input type='checkbox' class='checkbox' value="2"> 
 
</td> 
 
<td class='text-center'> 
 
       3 <input type='checkbox' class='checkbox' value="3"> 
 
</td> 
 
<td class='text-center'> 
 
       4 <input type='checkbox' class='checkbox' value="4"> 
 
</td> 
 

 
<a href="javascript:showChecked();">Show Checked</a> 
 

 
<div id="checkedItems"></div>

関連する問題