从AJAX响应的jQuery循环
问题描述:
我正在构建一个标记器。在用户提交的标记,AJAX的回报:从AJAX响应的jQuery循环
{"returnmessage":"The Ajax operation was successful.","tagsinserted":"BLAH, BLOOOW","returncode":"0"}
我想借此tagsinserted和循环通过它,每个循环中采取项目列表并将其插入HTML页面上。如何做到这一点的建议?
下面是当前的代码:
$("#tag-post").click(function(){
// Post $('#tag-input').val()
$.ajax({
url: '/tags/ajax/post-tag/',
data: { newtaginput : $('#tag-input').val(), userid : $('#userid').val()},
success: function(data) {
// After posting
alert('done');
}
});
});
答
你可以做这样的事情:
$("#tag-post").click(function(){
$.ajax({
url: '/tags/ajax/post-tag/',
data: {newtaginput : $('#tag-input').val(), userid : $('#userid').val()},
success: function(data) {
$.each(data.tagsinserted.split(', '), function(i, v) {
$("<div></div>").text(v).appendTo("#tagHolder");
});
}
});
});
答
你可以通过标签循环调用data.tags.split(',')
,并通过它返回数组循环。
您可以通过致电$('<li />').text(tag).appendTo('someSelector')
将标签插入页面。
+0
谢谢,但你能告诉我到底2结束了吗? – AnApprentice 2010-03-19 00:42:47
我喜欢这个。奇怪..这里是响应:{“returnmessage”:“Ajax操作成功。”,“tagsinserted”:“adadada”,“returncode”:“0”} 我得到tagsinserted是undefined? – AnApprentice 2010-03-19 16:22:06
@nobosh - 将'dataType:'json','选项添加到您的$ .ajax调用中,并将'alert(data);'添加到您的成功调用中,您会得到什么? – 2010-03-19 16:38:42
它仍然说“Firebug ....中的data.tagsinserted是未定义的”。下面是响应:{“returnmessage”:“Ajax操作成功。”,“tagsinserted”:“tettttt”,“returncode”:“ 0“} – AnApprentice 2010-03-19 16:42:28