获取所选行中特定td的值

时间:2015-04-16 16:45:40

标签: php jquery html

我有办法在使用

选择行时获取td的值
$(this).find('.servid').val()

但是我以后找不到获取此值的方法。

<table id="servicetable" class="scroll" style="border: 1px solid #cbcbcb;" align="center">
<tbody>
  <tr class="selected">
    <td>Service</td>
    <td class="servid" value="4004072">72569000</td>
    <td class="origin">PAC</td>
    <td class="street">60 KENDAL</td>
    <td class="city">SANRDINO</td>
    <td class="state">CA</td>
    <td class="zip">99999</td>
  </tr>
  <tr>
    <td>TelePacific Circuit</td>
    <td class="servid" value="5369592">77051900</td>
    <td class="origin">TP</td>
    <td class="street">819 KAISER</td>
    <td class="city">AHEM</td>
    <td class="state">CA</td>
    <td class="zip">88888</td>
  </tr>
</tbody>
</table>

我需要稍后填写更多表格后,获取所选tr的val() - &gt; servid td

我尝试了各种各样的东西,但是他们没有工作

$('#servicetable .selected > td:nth-child(2)').val();

$('#servicetable').find('.selected > td:nth-child(2)').val();

$('#servicetable').find('tr.selected').find('.servid').val();

3 个答案:

答案 0 :(得分:1)

下面你的解决方案

&#13;
&#13;
alert($('#servicetable tr.selected > td.servid').attr('value'));
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<table id="servicetable" class="scroll" style="border: 1px solid #cbcbcb;" align="center">
<tbody>
  <tr class="selected">
    <td>Service</td>
    <td class="servid" value="4004072">72569000</td>
    <td class="origin">PAC</td>
    <td class="street">60 KENDAL</td>
    <td class="city">SANRDINO</td>
    <td class="state">CA</td>
    <td class="zip">99999</td>
  </tr>
  <tr>
    <td>TelePacific Circuit</td>
    <td class="servid" value="5369592">77051900</td>
    <td class="origin">TP</td>
    <td class="street">819 KAISER</td>
    <td class="city">AHEM</td>
    <td class="state">CA</td>
    <td class="zip">88888</td>
  </tr>
</tbody>
</table>
&#13;
&#13;
&#13;

还有一件事你不能把这样的值放在一边,因为它不会按照w3c进行验证,如果是HTML5则建议使用数据值。 在jquery中你也可以像

一样
alert($('#servicetable tr.selected > td.servid').attr('data-value'));

答案 1 :(得分:0)

&#13;
&#13;
$('#value1').text($('#servicetable .selected > td:nth-child(2)').attr('value'));
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<table id="servicetable" class="scroll" style="border: 1px solid #cbcbcb;" align="center">
    <tbody>
      <tr class="selected">
        <td>Service</td>
        <td class="servid" value="4004072">72569000</td>
        <td class="origin">PAC</td>
        <td class="street">60 KENDAL</td>
        <td class="city">SANRDINO</td>
        <td class="state">CA</td>
        <td class="zip">99999</td>
      </tr>
      <tr>
        <td>TelePacific Circuit</td>
        <td class="servid" value="5369592">77051900</td>
        <td class="origin">TP</td>
        <td class="street">819 KAISER</td>
        <td class="city">AHEM</td>
        <td class="state">CA</td>
        <td class="zip">88888</td>
      </tr>
    </tbody>
    </table>

    <label id="value1"/>
&#13;
&#13;
&#13;

理想的方式

使用数据属性,如下所示,

  <td class="servid" data-value="4004072">72569000</td>

  $('#value1').text($('#servicetable .selected > td:nth-   child(2)').data('value'));

答案 2 :(得分:0)

如果您使用您需要的ID标记TR,然后拥有&#34;属性&#34;可能会更好。在TD中。 然后,您可以根据TD

解析TR
   <tr class="selected" id="98989">
      <td class="city">Lisbon</td>
       .....

   _tr = $("#servicetable .selected");
   _trId=_tr.attr("id");
   _trCity = _tr.find(".city").text();

.....