等效于不带jQuery的getJSON函数
Equivalent of getJSON function without jQuery
如果没有jQuery,这种方法的等价物是什么?
$(function() {
$.getJSON("datas.json", function(e) {
var t = [];
$.each(e, function(e, t) {
$("div#" + e).text(t)
})
})
})
谢谢。
使用纯Javascript,您的代码看起来像这样:
function createElements(elements) {
// Assuming you get an array of objects.
elements = JSON.parse(elements);
elements.forEach(function (element) {
var div = document.getElementById(element.id);
div.innerHTML = element.text;
});
}
var request = new XMLHttpRequest();
request.onload = createElements;
request.open("get", "datas.json", true);
request.send();
或者你可以使用其他很酷的库,比如超级代理,然后你的代码会是这样的:
var request = require('superagent');
function createElements(elements) {
// Assuming you get an array of objects.
elements = JSON.parse(elements);
elements.forEach(function (element) {
var div = document.getElementById(element.id);
div.innerHTML = element.text;
});
}
request.get('datas.json').end(function(error, elements){
if (!error) {
createElements(elements);
}
});
您发布的代码有几个部分。
$(function(){
....
});
这相当于jQuery的window.onload = function(){..}
$.getJSON("datas.json", function(e) {
..
});
这是jQuery的ajax获取请求,用于XMLHttpRequest
$.each(e, function(e, t) {
..
});
这只是对e
中的元素执行foreach操作。根据ajax调用返回的内容,您可能需要for
循环或for...in
循环。
$("div#" + e).text(t)
这设置了一个元素的文本,可能可以用.innerHTML
替换。
相关文章:
- ASP.Net AJAX$GetJson函数获胜'不要被处决
- Jquery将循环变量绑定到getJSON函数
- 如何在 window.setInterval 中每分钟运行一次 getJSON 函数
- 等效于不带jQuery的getJSON函数
- 在getJSON函数中分配一个变量
- jquery getjson 函数:回调返回错误的字符串
- 我没有从getJSON函数获得任何数据
- 无法访问 $.getJSON 函数
- 使用$. getjson()函数的空响应
- 我可以有一个递归的JavaScript函数在$.getJSON函数
- 正在尝试在$.getJSON函数之外使用JSON值
- 从getJSON函数返回值
- jquery getJSON函数未运行
- 不能访问$中的全局数组.getJSON函数
- 使用getJSON函数从while循环读取数据
- 如何从 $.getJSON 函数返回变量
- 如何在第一个 getjson 函数中的另一个 getjson 调用中使用 getjson 响应变量
- 使用 getJSon 函数将 JSON 数据解析为 html 页面
- 在$中测试布尔变量时出现奇数结果.getJSON函数
- 在getJSON函数中使用变量的值而不是变量