2011-12-09 8 views
0

私はこのJS関数を使用してテーブルにラベルを動的に追加します。この関数はコンボボックスの選択インデックスの変更から呼び出されます。ユーザーが新しいアイテムを選択すると、ラベルIテーブルの現在の値(つまりテーブルの行)をチェックして新しいものが追加された場合にのみ、そのアイテムを追加します。どうすればいいですか?どのようにしてテーブルの既存のアイテム(ラベル)をチェックすることができますか?Javascriptで表の行をチェックする

var spanTag = document.createElement("span"); 
     spanTag.id = document.getElementById('cmbDestinationUser').selectedIndex.toString(); 

     var e = document.getElementById("cmbDestinationUser"); 
     var strUser = e.options[e.selectedIndex].text; 
     spanTag.innerHTML = strUser; 
     var TR = document.createElement('tr'); 
     var TD = document.createElement('td'); 
     TD.appendChild(spanTag); 
     TR.appendChild(TD); 

     document.getElementById('tblReceivers').appendChild(TR); 

おかげ

+0

ユーザーがページを読み込んだとき、テーブルは最初は空白ですか? – Christophe

+0

はい最初は空です –

答えて

1

あなたは固定IDとのスパンを追加している - あなたはそれがすでに存在する場合に見つけることができます:

また
if(document.getElementById(spanTag.id) == null) 
{ 
    // add it 
} 

を、あなたは少しで驚くほどあなたの人生を簡素化することができjQuery私はこれがあなたがやろうとしているのと同じだと思う:

id = $('#cmdDestinationUser').val(); 
if($("#"+id).length == 0) 
{ 
    selText = $('#cmdDestinationUser option:selected').val(); 
    $("#tblReceivers").append("<tr><td><span id='" + id + "'>" + selText + "</span></td></tr>"); 
} 
関連する問題