2011-12-30 3 views
1

Вот что я имею в виду: 3 текстовые поля, клонированные с помощью математической функции A/B = C. Работает отлично.set input value clone

Проблема: Я хотел бы установить значение текстового поля «на клавиатуре» A, B и C, чтобы значение действительно читало то, что было введено в текстовое поле. (См "СЭР" в комментариях к коду)

http://jsfiddle.net/CzZxf/

$("#math-table input").live("keyup", function(){ 
    var id = this.id.match(/\d+/); 
    $("#C"+id).val(Math.round (($("#A"+id).val()/$("#B"+id).val()) * 100) + "%" );  
    $('#A1'+id).attr('value', ($('#A1'+id).val())); // NOT RIGHT? 
    $('#B1'+id).attr('value', ($('#B1'+id).val())); // NOT RIGHT? 
    $('#C1'+id).attr('value', ($('#C1'+id).val())); // NOT RIGHT? 
}); 

var uniqueIds = $("#math-table tr").length; 
$("#math-table input[id^='B']").live("change", function(){ 
    var $thisRow = $(this).closest("tr"), 
    $clone = $thisRow.clone(),    // Clone row 
    $inputs = $clone.find("input").val("");// Reset values, return all inputs 
    uniqueIds++; //Increment ID 
    $inputs[0].id = "A" + uniqueIds; 
    $inputs[1].id = "B" + uniqueIds; 
    $inputs[2].id = "C" + uniqueIds; 
    $thisRow.after($clone);      
}); 
+0

A [jsFiddle] (http://jsfiddle.net/) поможет. – sczizzo

+0

наверняка, спасибо! http://jsfiddle.net/CzZxf/ – user1040259

ответ

2

Таким образом, вы хотите, чтобы атрибут буквального значения заселяться? Вы только что получили его: http://jsfiddle.net/CzZxf/1/ (проверено в CHROME)

+0

Спасибо тонну! Вы были правы, я был рядом. – user1040259