ajax请求接口里的数据,然后显示在页面里

如题所述

1、在模板中使用了jQuery插件封装的ajax,我用到的是get请求,这在django中涉及到模板和静态文件的使用。

2、然后配置路由,因为我们在ajax中请求的路由地址是getdata,所以在django路由中也要设计这个路由url,并且用views的函数处理路由。

3、然后用视图函数处理对应路由url的请求,然后导入方法JsonResponse,然后我自定义一个字符串,并且用键值对字典的形式返回。注意,最好用JsonResponse方法返回数据,不然可能得不到json格式的数据。

4、get请求中的data参数就是存储后台返回的数据的,但是这个数据是json格式的,所以我们可以通过data.键名(刚才定义的u),这样就可以取出数据了。

5、运行django服务器之后,点击按钮,那么就会开始请求数据,然后弹出数据。可以看到数据跟后台定义的数据一模一样。

温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-12-15
首先确认他给你返回的是一个string类型还是数组。
如果是数组的话要知道他给你返回数组的KEY值。
调用的时候如果是数组给他用ajax请求的时候设定下返回数据类型json
在success 返回方法里直接调用比如
success:function (val){
val.name //就是获取他返回数组里的name值
}
如果不是数组直接输出val就行了。
第2个回答  推荐于2017-10-07
$.ajax({
url:"这里是你要请求的地址",
data:{"id":id}, //以键/值对的形式
async : false,
dataType : "json",
success : function(data) {
for(int i = 0; i < data.length; i++) { //循环后台传过来的Json数组
var datas = data[i];
$("#id").append("<p>"+datas.email+"</p>")
}
}
});本回答被提问者采纳
第3个回答  2015-12-15
后台:

namespace Ajax
{
/// <summary>
/// GetDrive 的摘要说明
/// </summary>
public class GetData : IHttpHandler, IRequiresSessionState
{

public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
context.Response.Write("Hello world!");
}
}
JS:
$.ajax({
url:'/ajax/GetData.ashx',

success:function(result){
$("#div").html(result);
}

});追问

如果说请求接口,接口给出json字符串,解析json字符串,显示到页面。只要js代码。接口地址随便写什么代替0.0 让我看明白点。谢谢。弄好了加20

追答

我晕,损失大了,那还不简单啊?
比如你返回{"name":"andy","age":62}
success:function(msg){
var json=$.parseJSON(msg);

$("#div").html("name:"+json.name+"age:"+json.age);

}
就这东西,你采纳了别人。。。

第4个回答  2015-12-15
跨域不跨域,写个ajax不就完事了