jQuery 1.9.1 AJAX + icanhaz/mustache の実例を作ろうとしています。これは私のテンプレートです:
<script id="user" type="text/html">
{{#users}}<li>Username: {{ username }}, fullname: {{ fullname }}</li>{{/users}}
</script>
これは私のJavaScriptです:
$(document).ready( function() {
$("#user-btn").click(function() {
$.ajax({
type: "GET",
url: "../php/client/json.php",
data: {
type: "users"
}
}).done(function( response ) {
var element = $('#dialog-message');
element.html("<ul>");
element.append(ich.user(response));
element.append("</ul>");
});
});
このアドレスからの AJAX 応答は次のようになります。
{"users":[{"username":"jd","fullname":"John Doe"},{"username":"jl","fullname":"John Lennon"}]};
次のコードでは、icanhaz は何もレンダリングできません。javascript コンソールでしばらく過ごしたところ、 が期待どおりであることがわかりtypeof response
ましstring
たobject
。Icanhaz は object も想定しています。そのため、正しい応答をレンダリングできませんでした。
私は何か間違ったことをしていますか、それとも jquery.ajax が常に文字列応答を返すことを知らなかった貧しい初心者ですか? もしそうなら、私はそれらをどのように扱うべきですか?