Получить значение атрибута данных и установить значение соответствующего элемента

В качестве продолжения этого вопроса и на основе полученного ответа я сделал что-то вроде этого: http://jsfiddle.net/9r79f/1/

HTML:

<table>
 <tbody><tr>
 
 <td>Title</td>
 <td>Title1</td>
 <td>Title2</td>
 </tr>
 <tr>
 <td>A</td> 
 
 
 
 </tr>
 <tr>
 <td>A1</td>
 
 
 
 </tr>
 <tr>
 <td>A2</td> 
 
 
 
 </tr>
 <tr>
 <td>B</td> 
 
 
 
 </tr>
 <tr>
 <td>B1</td>
 
 
 
 </tr>
 <tr>
 <td>B2</td> 
 
 
 
 </tr>
</tbody></table>

JQuery:

$('input[type=text]').on('blur', function() {
 //alert($(this).val());
 calcA($(this));
});

function calcA(param){
 var finalresult = 0,
 $sub = param,
 $value = param.data('parent');

 $.each($sub, function(i) {
 var fiVal = parseFloat( $sub.eq(i).val() );

 if (fiVal) {
 finalresult += fiVal;
 $value.val( finalresult );
 }

 });
}

Как установить значение первой строки в A1 + A2 в первую строку ввода в A используя атрибуты data не повторяя код? И сделать то же самое для B и так далее?

1 ответ

Вы можете сделать любую из этих вещей, чтобы получить атрибут data-parent:

var data_parent_value = $(param).attr('data-parent'); // A or undefined

См. Консоль в этом JSFiddle: http://jsfiddle.net/9r79f/2/

licensed under cc by-sa 3.0 with attribution.