infomf
infomf

Reputation: 167

Jquery - find value in table

How to find value by name? I find name "Obsah balení:" and I need to return a value 3,18 m² or directly number 3,18.

Code:

<table id="product-detail-info" class="pr-list-parametes">
   <tbody>
      <tr>
         <td class="pr-detail-parameter-name">
            Frézováná hrana:
         </td>
         <td class="pr-detail-parameter-value">
            ne
         </td>
      </tr>
      <tr>
         <td class="pr-detail-parameter-name">
            Obsah balení:
         </td>
         <td class="pr-detail-parameter-value">3,18 m²</td>
      </tr>
      <tr>
         <td class="pr-detail-parameter-name">
            Počet desek v balení:
         </td>
         <td class="pr-detail-parameter-value">7 ks</td>
      </tr>
      <tr>
         <td class="pr-detail-parameter-name">
            Počet m² na paletě:
         </td>
         <td class="pr-detail-parameter-value">127,2 m²</td>
      </tr>
   </tbody>
</table>

Upvotes: 2

Views: 910

Answers (2)

Parithiban
Parithiban

Reputation: 1666

This will work for you:

var getText = $('#product-detail-info tr td').filter(function(){
  return $.trim($(this).text())  == "Obsah balení:";
}).siblings('td').text();

alert(getText);

Upvotes: 0

Pranav C Balan
Pranav C Balan

Reputation: 115282

Use :cotains() pseudo-class selector and next() method .

console.log(
  // select `td` which cotains the text
  $('td:contains("Obsah balení:")')
  // select the sibling `td` which immediately after the element
  .next()
  // get the text contents
  .text()
)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id="product-detail-info" class="pr-list-parametes">
  <tbody>
    <tr>
      <td class="pr-detail-parameter-name">
        Frézováná hrana:
      </td>
      <td class="pr-detail-parameter-value">
        ne
      </td>
    </tr>
    <tr>
      <td class="pr-detail-parameter-name">
        Obsah balení:
      </td>
      <td class="pr-detail-parameter-value">3,18 m²</td>
    </tr>
    <tr>
      <td class="pr-detail-parameter-name">
        Počet desek v balení:
      </td>
      <td class="pr-detail-parameter-value">7 ks</td>
    </tr>
    <tr>
      <td class="pr-detail-parameter-name">
        Počet m² na paletě:
      </td>
      <td class="pr-detail-parameter-value">127,2 m²</td>
    </tr>
  </tbody>
</table>

Upvotes: 3

Related Questions