jquery获取$(this)的方法.id = something.val()

时间:2017-06-27 07:18:31

标签: jquery

<tr>
 <td><input type="checkbox">
 </td>
 <td class='something'>13</td>
 <td class='something2'>55</td>
 <td class='something3'>552</td>
</tr>
<tr>
 <td><input type="checkbox">
 </td>
 <td class='something'>23</td>
 <td class='something2'>35</td>
 <td class='something3'>155</td>
</tr>
 <td><input type="checkbox">
 </td>
 <td class='something'>323</td>
 <td class='something2'>135</td>
 <td class='something3'>255</td>
</tr>

当检查前两个tr的复选框并按下提交按钮时,我想从jquery文件中获取class ='something2'的html值并使用它们将它们推送到php文件以便我可以处理它们。 我如何获得价值?

我想说像$(this).class = something2.val();我怎么在jquery中说这个?

(试图说清楚?,如果前两个TR已选中复选框,我怎么能说我想要类的东西val()(这会让我55和35)

4 个答案:

答案 0 :(得分:2)

您应该找到已选中的复选框,并使用.map获取您之后的.text()个单元格。

&#13;
&#13;
$('button').on('click',function(){
  
  var result = $(':checkbox:checked').map(function(){
      return $(this).parents('tr').find('td.something2').text();
  }).get();
  console.log(result);
  
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
<tr>
 <td><input type="checkbox">
 </td>
 <td class='something'>13</td>
 <td class='something2'>55</td>
 <td class='something3'>552</td>
</tr>
<tr>
 <td><input type="checkbox">
 </td>
 <td class='something'>23</td>
 <td class='something2'>35</td>
 <td class='something3'>155</td>
</tr>
<tr>
 <td><input type="checkbox">
 </td>
 <td class='something'>323</td>
 <td class='something2'>135</td>
 <td class='something3'>255</td>
</tr>
</table>
<button>click me</button>
&#13;
&#13;
&#13;

答案 1 :(得分:0)

您可以使用.text() or .html()个功能。

$('.something2').text() or $('.something2').html()

答案 2 :(得分:0)

试试这个

$(this).parent('td').siblings('.something2').text();

答案 3 :(得分:0)

我认为答案分为两部分: 首先要选择td的值,您应该使用text()html()代替val()。 其次要构建选择td的逻辑,我更愿意点击提交按钮。首先选择所选复选框和所选复选框的数量。然后,对于每个选中的复选框,使用类td从兄弟级别的'something'+(number of selected checkbox)中取出文本。

var selected = $('input:checkbox:checked');
var selectedVals = [];
var numSelected = selected.length;
selected.each(function() {
    value = $(this).parents('tr').find('td.something'+numSelected.toString()).text();
    selectedVals.push(value);
});

希望它有所帮助。

这是一个小提琴:https://jsfiddle.net/q5z9tc3r/1/