1

私はJavascriptが初めてで、フォームを送信せずにリンクをクリックして作成および削除される要素を含むフォームを設計しようとしています。

スクリプトは、クリックされたボタン (css と<a>リンク) の一意の ID を取得し、リンクを含む行の ID を計算し、<tr>要素全体を削除することに依存しています。

このために、クリックされたリンクのIDを取得しようとしています。リンクとそれが埋め込まれている要素は、別のボタンをクリックすると JavaScript によって生成されます。

私は次のことを試しました:

var btnDel=document.createElement("a");
btnDel.id="NS_D"+count;
btnDel.className="btn btn-danger";
btnDel.addEventListener('click', function() 
{            
    alert(e.id);
}, false);
var btnText=document.createElement("span");
btnText.className="btn-label";
btnText.innerHTML="Delete";
btnDel.appendChild(btnText);            
td.appendChild(btnDel);     

ボタンは生成されますが、期待どおりにアラートが表示されません。どこで間違ったのでしょうか?

4

2 に答える 2

2

thisではなく使用する必要がありますe

alert(this.id);

イベントハンドラーで。

ここでデモ。

(また、コンソールを表示してコードを実行することに慣れる必要があります。これは、コンソールが表示されない理由がalert存在eしないことを示しているはずです。)

于 2013-07-22T14:27:15.743 に答える