我正在尝试制作一个 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 也期望对象 - 这就是它没有设法呈现正确响应的原因。
我做错了什么还是我只是一个不知道 jquery.ajax 总是返回字符串响应的可怜的新手?如果是这样,我应该如何处理它们?