2017-07-27 6 views
1

を行/フィールドが追加されたら、以下の機能が表示されるように、削除リンクを可能にし、クリックされた場合には、行/フィールドを削除します:- HTML&JSベースのフォーム

var ct = 1; 
function new_bank(){ 
ct++; 
var div1 = document.createElement('div'); 
div1.id = ct; 

// bank to delete extended form elements 

    var delLink = '<div style="text-align:right;margin-right:73px"><a 
    href="javascript:delIt('+ ct +')">Delete</a></div>'; 
    div1.innerHTML = document.getElementById('newbanktpl').innerHTML + delLink; 
    document.getElementById('newbank').appendChild(div1); 
} 

上記コードが正しい動作要素

function delIt(eleId){ 
    d = document; 
    var ele = d.getElementById(eleId); 
    var parentEle = d.getElementById('newbank'); 
    parentEle.removeChild(ele); 
} 

の新しく追加されたセットを削除する機能。しかし、フィールドの合計を計算する別の関数があり、行/フィールドを削除するとこの合計は更新されません。私はリロード削除リンクがクリックされた関数や似たような探しています

、その後、合計機能を更新し、正しい量以下

合計機能のための私のコードであるに合計を更新:

//Creating total 
function findTotal(){ 
    var arr = document.getElementsByName('Value[]'); 
    var tot=0; 
    for(var i=0;i<arr.length;i++){ 
    if(parseInt(arr[i].value)) 
    tot += parseInt(arr[i].value);} 
    document.getElementById('total').value = tot; 
    } 
} 
は、あなた delIt()関数の内部

答えて

1

は、以下のように再びfindTotal()関数を呼び出す: -

function delIt(eleId) 
{ 
    d = document; 
    var ele = d.getElementById(eleId); 
    var parentEle = d.getElementById('newbank'); 
    parentEle.removeChild(ele); 
    findTotal(); //call here 
} 

今すぐrの後データを再計算し、新しい値をtotalフィールドに貼り付けます。

+0

@cosは、新しい質問をすると、あなたはこの質問で行ったようにあなたの努力を追加することを忘れないでください、あなたは答えを得るforsureます。申し訳ありませんが、私はPDF作成にそれほど親切ではありません。 –

+0

アプリケーション。あなたはただ一つの答えが好きなのか分かりませんでした。あなたが最初に答えたように私はあなたを元気にするでしょう! – Cos

+0

@Cosあなたを助けてうれしい:) :) –

1

ページを更新する必要はありません。アイテムを削除した後に再計算して合計を更新することができます。これを達成するために、あなたはこのように()delItを変更する必要があります。

function delIt(eleId) { 
    d = document; 
    var ele = d.getElementById(eleId); 
    var parentEle = d.getElementById('newbank'); 
    parentEle.removeChild(ele); 
    findTotal(); 
} 
関連する問題