2015-05-18 2 views
1

У меня есть jquery datatable, который содержит несколько столбцов и строк, как показано ниже.JQuery datatable link onclick event

<table> 
    <thead> 
     <tr> 
      <td>Name</td> 
      <td>Class</td> 
      <td>Action</td> 
      <td>Score</td> 
      <td>Corrected Score</td> 
     </tr> 
    </thead> 
    <tbody> 
     <tr> 
      <td>Student1</td> 
      <td>Math</td> 
      <td><a href="#">Add 5</a> 
      </td> 
      <td>73</td> 
      <td> 
       <input type="text" id="1_final_score" /> 
      </td> 
     </tr> 
     <tr> 
      <td>Student2</td> 
      <td>Biology</td> 
      <td><a href="#">Add 5</a> 
      </td> 
      <td>84</td> 
      <td> 
       <input type="text" id="2_final_score" /> 
      </td> 
     </tr> 
     <tr> 
      <td>Student3</td> 
      <td>History</td> 
      <td><a href="#">Add 5</a> 
      </td> 
      <td>50</td> 
      <td> 
       <input type="text" id="3_final_score" /> 
      </td> 
     </tr> 
    </tbody> 

Когда я нажмите на кнопку «Добавить» 5 ссылку, я хочу, чтобы добавить 5 к счету в соответствующей строке и вставьте результат в конечном счете поля ввода. Я попытался использовать функцию выбора строки jquery, но не могу понять, как это сделать.

+0

проверки этого @Dan вы можете использовать этот протокол HTTPS: //jsfiddle.net/ yecmqf5z / –

ответ

3
$(document).ready(function() { 
$('table').find('a').click(function() { 
    var original = parseInt($(this).parents('tr').find('td:nth-child(4)').text()) + 5; 

    $(this).parents('tr').find('input[type=text]').val(original); 

    }); 

}); 
0

Вы можете попробовать это:

$(document).ready(function(){ 
    $("a").on("click", function(){ 
     var num=parseInt($(this).closest("td").next("td").text()); 
     num=num+5; 
     $(this).closest("td").next("td").text(num); 
     $(this).closest("tr").find("input").val(num); 

    }); 
}); 

FIDDLE

0

Попробуйте с этим

$('a:contains("Add 5")').click(function(){ 
    $(this).parents('tr').find('td input:text').val(+$(this).parent().next('td').text() + 5) 
}); 

скрипку: http://jsfiddle.net/2n0bevxo/172/