2015-08-14 2 views
1

Мне нужна ваша помощь.Использование jquery для поиска выбранного значения между td и div

Нижеприведенная функция используется для поиска ссылочного номера, затем сравнивает его, а затем, если соответствующее значение найдено, значения ячеек изменяются в соответствии с полями ввода. Это прекрасно работает, однако, как я могу идти о модификации существующей функции ниже, чтобы захватить значение между

<td><div>this value here</div></td> 

Здесь есть Javascript в вопросе:

function changeit() { 
    var valueToFind = $('#number').val(); 
    $('#data > tbody> tr').each(function(index) { 
     console.log(index); 
     var firstTd = $(this).find('td:first'); 
     if ($(firstTd).text() == valueToFind) { 
      console.log("found: " + index + ":" + valueToFind); 
      $(this).find('td:eq(1)').text($('#item').val()); 
      $(this).find('td:eq(2)').text($('#color').val()); 
     } 
    }) 
} 

Вот HTML Markup:

<!DOCTYPE html> 

<html> 

<head> 

    <meta http-equiv="Content-Language" content="en-us"> 

</head> 

<body> 

    Number:* 
    <input type="text" id="number"> 
    <br> Items: 
    <input type="text" id="item"> 
    <br> Color: 
    <input type="text" id="color"> 
    <br> 

    <br> 

    <input type="button" onclick="changeit()" value="save"> 

    <br> 

    <table id="data" style="width: 100%" cellspacing="1" class="style1"> 
     <tr> 
      <td> 
       <div><b>Number*</b></div> 
      </td> 
      <td> 
       <div><b>items</b></div> 
      </td> 
      <td> 
       <div><b>Colors</b></div> 
      </td> 
     </tr> 
     <tbody> 
      <tr> 
       <td> 
        <div> 
         <div>123</div> 
        </div> 
       </td> 
       <td> 
        <div>Boats</div> 
       </td> 
       <td> 
        <div>red</div> 
       </td> 
      </tr> 
      <tr> 
       <td> 
        <div>456</div> 
       </td> 
       <td> 
        <div>Vehicles</div> 
       </td> 
       <td> 
        <div>blue</div> 
       </td> 
      </tr> 
      <tr> 
       <td> 
        <div>789</div> 
       </td> 
       <td> 
        <div>Motorcycles</div> 
       </td> 
       <td> 
        <div>green</div> 
       </td> 
      </tr> 
     </tbody> 
    </table> 

</body> 

</html> 
+0

не могу просто изменить вар firstTd = $ (это) .find ('тд: первый'); для var firstTd = $ (this) .find ('td: first div'); ? –

+0

ОК, это как ответ, и я соглашусь! – BobbyJones

+0

или вы также можете это сделать. if ($ (firstTd) .text() == valueToFind) до if ($ ("div", $ (firstTd)). text() == valueToFind) – Farhan

ответ

0

изменение

var firstTd = $(this).find('td:first'); 

к

var firstTd = $(this).find('td:first div');