2011-12-30 6 views
1

私が働いていることは次のとおりです。数学関数A/B = Cでクローン化された3つのテキストフィールド。完全に動作します。入力値のクローンを設定します

問題:A、B、Cのテキストフィールド値 "on keyup"を設定して、値が実際にテキストフィールドに入力されたものを読み取るようにしたいとします。 (コードのコメントで "正しくない" を参照)

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

[jsFiddle](http://jsfiddle.net/)が役に立ちます。 – sczizzo

+0

確かに、ありがとう! http://jsfiddle.net/CzZxf/ – user1040259

答えて

2

だから、リテラル値の属性が取り込まれたいですか?ちょうどそれを持っていた:http://jsfiddle.net/CzZxf/1/(CHROMEでテスト済み)

+0

ありがとう!あなたは正しかった、私は近くにいた。 – user1040259

関連する問題