JavaScript おれおれ Advent Calendar 2011 – 22日目

DBで得た情報をHTML形式で出力するだけならサーバー側でやればいいんですが、JSだけで使いたい場合ってありますよね。ないかな。あるでしょ。あるはず。

そういうデータはテキストにしてAjax/XHRで取得するとか、JavaScriptの変数に代入するとかして出力するとかあるんですが、前者だと通信のコストがかかるし、後者はエスケープとか考慮しなくちゃいけなくてなんとも剣呑です。

echo '<script type="text/javascript">';
echo "var myData = $formatted_data;";
echo '</script>';

というわけでテキストはテキストのまま埋め込んでしまいます。

これスクリプトじゃないよって主張する

こんな感じで。

<script id="mydata" type="text/x-mydata">
26,23,43,55,82,75,82,98,83,85
79,31,38,16,85,85,20,41,90,61
36,52,66,61,43,4,10,40,30,49
...
</script>

(何のデータだこれ……。)

(さらに…)