※ ChatGPTを利用し、要約された質問です(原文:JavascriptでのHTMLタグの書き換え)
JavascriptでのHTMLタグの書き換え方法
このQ&Aのポイント
Javascriptを使用してHTMLタグを書き換えたい場合、特定のタグのid属性を可変にすることができます。
具体的には、id属性に文字列を連結することで可変にすることができます。
以下のようにコードを書くことで、id属性の値を$sの値に連結することができます。
function callback(result,s){
$('#message' + s).html(result);
}
(1)HTML内のあるaタグをクリックします。
onClick="doAction(1,2,3)
(2)その値を[hoge.php]に渡します。
function doAction(a,b,c){
$.post('hoge.php',{a:a,b:b,c:c},callback);
}
(3)hoge.phpで値を元に処理した結果[$result]と[$s]をHTMLに戻します。
echo $result;
echo $s;
(4)戻ってきた値を元にHTML内の特定のタグを書き換えたい
function callback(result,s){
$('#message').html(result);
}
ここで質問です。上記の(4)の場合、
HTML内の[id=message]タグが書き換えられますが、
ここを可変にしたい場合はどのようにしたら宜しいのでしょうか?
具体的には、
[id=message5]
のように、messageの後ろに数字が入ります。
そしてその数字は$sの値です。
■失敗した例
・sをプラスで入れてみた
function callback(result,s){
$('#message'+s).html(result);
}
・sを連結してみた
function callback(result,s){
$('#message'.s).html(result);
}
宜しくお願いします。
お礼
「function callback(result,s){ } には result しか返ってきません。」 そうだったのですね。。。知りませんでした。 「hoge.php で値を返す際に XML とか JSON 形式などで $result と $s をちゃんと分けて返してあげて、callback 関数の中でパースする必要があります。」 こちらをご指南いただくことは可能でしょうか?