循环中的表格仅选择td选中复选框

时间:2018-01-22 14:23:35

标签: javascript html checkbox input

我试图让它成为当用户选择一个复选框然后点击按钮(下面的代码中未显示)时,它们将被重定向到其中包含某些细节的新页面。我需要为此获取asset.id值。我的问题是,我不知道从哪里开始获取这些值并使其与submit按钮一起使用。

HTML

<thead>
  <tr>
    <th>Select</th>
    <th>Model</th>
    <th>Asset Number</th>
    <th>Warranty</th>
    <th>Notes</th>
    <th>Actions</th>
 </tr>
</thead>
<tbody>

   {%  for asset in assets  %}
      <tr>
       <td><input type="checkbox"/></td>
       <td>{{asset.model}}</td>
       {% if loop.first %}<td class="tour-step tour-step-sixteen"><a href="/dashboard/it/asset/{{asset.id}}">{{ prefix }}{{asset.assetNumber}}</a></td>
       {% else %}
       <td><a href="/dashboard/it/asset/{{asset.id}}">{{ prefix }}{{asset.assetNumber}}</a></td>
       {% endif %}
        <td>{{asset.warranty | date("y-m-d")}}</td>
        <td>{{asset.notes}}</td>
        <td>
           <form id="label-form" action="/dashboard/it/label/print" method="POST">
            <button type="submit" class="btn btn-danger"><i class="fa fa-trash-o"></i></button>
           </form>
         </td>
      </tr>
    {% endfor %}

 </tbody>

我还没有JS因为我不确定如何开始获取我需要的值以及如何将它们保存/传递到我的POST路径上。甚至指导也会很棒。

我现在花了3.5个小时在网上看,但是我找不到任何解决方案似乎完整,他们都缺少某些东西,或者单个值不是我想要的多个。

1 个答案:

答案 0 :(得分:1)

您可以循环表tr并获取已选中复选框的ID。

提交表单时,可以调用该函数,在服务器中将该数组发送到数组中。

这只是一个简单的例子,现在您可以根据需要使用代码

getSelected = function(){
  var array = [];
  $('#my_table tbody tr').each(function(index, object){
    if($(this).find('input[type="checkbox"]').prop("checked"))
      array.push($(this).find('.id').html());
  });
  console.log(array);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id="my_table">
    <thead>
      <tr>
        <th>ID</th>
        <th>Value</th>
        <th></th>
      </tr>
    </thead>
		<tbody>
			<tr>
				<td class="id">1</td>
				<td>Hola</td>
				<td><input type="checkbox"></td>
			</tr>
			<tr>
				<td class="id">2</td>
				<td>Como</td>
				<td><input type="checkbox"></td>
			</tr>
			<tr>
				<td class="id">3</td>
				<td>Stas</td>
				<td><input type="checkbox"></td>
			</tr>
		</tbody>
	</table>
  <button onclick="getSelected()"> Get Selected </button>