サーバーレスポンスによってレンダリングされた要素から特定の関数を起動する方法を理解できない場合があります。htmlサーバーへのイベントバインディングの応答
私はdiv要素(ID =「myDiv」)のようなものを持っているコンポーネントのテンプレートで私は、HTMLマークアップを返すサーバーへの要求を行います。 <a href="javascript: myFunction();"
:だから私のコンポーネントで、私は $('#myDiv').html(response);
ような何かをするだろうこれに伴う問題は、私はHTMLマークアップとの完全なページを取得し、すべての<li>
項目は、タグを持っていることです。すべての要素がすでにプレーンhtmlとして渡されているので、各li項目に(click)="myFunction"
イベントバインディングを設定するにはどうすればよいですか?
編集:私は機能を持っている
(あなたがアイブを見ることができるようなフォーマットのためと申し訳ありませんが、実際には前に何かを掲載しません)
loadData(val){
let url = 'http://www.something.com/some-endpoint?lg='+val;
$.post(url,function(data)){
$('#myDiv').html(data);
}
}
data
応答は、どこかで長く複雑な、そしてありますそこに、あります:
<li><a href="javascript: loadData(@id)"></a></li>
ユーザーがタグをクリックしたときの角度がFUNCTを発生しませんので、私は、loadData()
を実行することはできませんイオン。
(click)="loadData()"
を追加することはできません。サーバーからの応答です。あなたが動的にそれらのli
を追加しているとして
動的に追加された 'li'権利で' onClick'イベントをトリガーしたいですか? –
はい、基本的に、応答はすでにフルページのHTMLマークアップであるため、テンプレートのliを操作することはできません。 liは 'href =" javascript:someFunction(); "構文のアンカータグであるため、関数は起動しません – flawedMnemonic
発生している問題を再現するコードサンプルを提供できますか? – biagidp