html()は、divなどの非フォーム要素にコンテンツを設定するために使用する必要があります。**この質問には何度か回答がありましたが、私は気づいていませんでした。
$ .ajax呼び出しからコメントを取得した後、値を設定しようとしています。commentOutputとcommentSpanの値を警告すると、正しいデータが表示されています。ただし、これらのコメントの値をスパンに設定しようとすると、表示されず、生成されたソースにも表示されません。
これがjavascriptです。コンソールでPOSTからの戻りを確認できます。クリック時に警告したので、スパンに対して取得している値も確認できます。
これを呼び出すには、猫の最初の写真をクリックするだけです。この時点で他の人はコメントを持っていません。
var ajaxOptions = {
type: 'POST',
dataType: 'json',
url: 'ajax/comments.php',
data: { id: photoID, action: 'GetComments' },
success: function(data) {
for(i=0; i<data.length; i++) {
var commentOutput = '<div><h4>'+data[i].comment_user+' says:</h4>';
commentOutput += '<span>'+data[i].comment_msg+'</span>';
commentOutput += '</div>';
var commentSpan = '#photo' + data[i].photo_id + ' .comments';
$(commentSpan).val(commentOutput);
$(commentSpan).delay('200').css('display','block');
}
}
};
どんな助けでも大歓迎です、
乾杯、
コーディ