私は、リンクをクリックするとダイアログエレメントに動的に追加されているdiv内のテキストを置き換えようとしています。JQueryで動的に追加された要素を取得する
var feedBackDialog;
if(!feedbackDialog){
$(".feedback_link").click(function() {
//set contents of the dialog 'feedback-dialog'
$.get("https://stackoverflow.com/users/feedback", null, function(result) {
feedBackDialog = $("#feedback-dialog").html(result). //set html content during callback
attr('title', title).
dialog({ autoOpen: true, width: 560, modal: true
});
});
}
else
{
feedbackDialog.dialog({ autoOpen: true, width: 560, modal: true });
}
//change the text in the newly created element.
$('#feedback-label').text($(this).attr('feedback_desc'));
私がフェッチしているhtmlには、idがfeedback-label
の要素が存在します。ただし、最後の行の$('#feedback-label')
は、DOMがリフレッシュされていないため機能しません。
私は$("#feedback-dialog").find('#feedback-label')
をやってみましたが、一貫して動作していないようです。誰もこの新しく作られた要素を得る良い方法を知っていますか? 私は単にhtmlの文字列を<div id="feedback_label"></div>
の内容に置き換えることができますが、私はより良い方法を探しています。
アイデアは正しいようですが、テキストは最初のクリックでdivに追加されません。 – arviman
エラーメッセージが表示されますか? –
エラーメッセージは表示されません。私は問題がjqueryのダイアログにdivを変更する前に作成されているので、テキストが含まれていないという事実にあると私は信じています。 – arviman