Проблема в том, что не получается из функции, которая принимает данные, взять и обработать данные пользователей.
Прошу помочь и подробно рассказать, как это сделать, ибо перечитал гайды, но нечего не помогло.
function sendRequest(method, params, func) {
$.ajax({
url: 'https://api.vk.com/method/friends.search?count=60&fields=photo_100&access_token=----&v=5.72',
method: 'GET',
dataType: 'JSONP',
success: function(data) {console.log(data);}
// Получение ответа и вывод в консоле (подразумевается что data это название или обозначение JSON массива
});
}
function loadFriends() {
sendRequest('friends.search', {count: 60, fields: 'photo_100'}, function (data) {
drawFriends(data);
});
}
function drawFriends(data) {
// В этом случае JSON файл не дублируется в консоли, не выводит нечего в HTML.
var html = '';
var f = friends[i];
html += +'<h4>' + f.first_name + '</h4>';
var bdjson = $.parseJSON(data);
console.log(bdjson);
alert (response.item[1]);
html += +'<h4>' + bdjson.item[1].first_name + '</h4>';
Попробуйте так.
// Defined to be called from ajax
$.fn.drawFriends = function (data) {
// В этом случае JSON файл не дублируется в консоли, не выводит нечего в HTML.
var html = "";
//----------------------------------------------------------------
// Этот массив неизвестен ???
//----------------------------------------------------------------
var friends = [{first_name: "Petrov"}];
var i = 0;
//----------------------------------------------------------------
var f = friends[i]; // Is not defined !!!!
html += '<h1>' + f.first_name + '</h1>';
var bdjson = data;//$.parseJSON(data); // В случае с получением JSON не нужно парсить
console.log(data[0]); // debug print
html += '<h3>' + bdjson[0].name + '</h3><br>'; // first_name changed to name
//----------------------------------------------------------------
var res = document.getElementById("res");
res.innerHTML += html;
//----------------------------------------------------------------
}
function sendRequest(method, params, func) {
$.ajax({
url: 'https://jsonplaceholder.typicode.com/users', // testing JSON
method: 'GET',
dataType: 'JSONP',
success: function(data) {
$.fn.drawFriends(data); // Обработка результатов
}
// Получение ответа и вывод в консоле (подразумевается что data это название или обозначение JSON массива
});
}
function loadFriends() {
sendRequest('friends.search', {
count: 60,
fields: 'photo_100'
}, function(data) {
drawFriends(data);
});
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<button onclick="sendRequest()">Send</button>
<div id="res"></div>
Вы передаете callback 'func' в sendRequest, но нигде его не вызываете. Вместо:
success: function(data) {console.log(data);}
Должно быть:
success: function(data) {func(data);}
Или же:
success: func
У вас же на success просто вызывается функция с console.log
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Есть плата (raspberry pi3), к цифровым входам которой прицеплена кнопка
На этом сайте, на некоторых страницах возникает JS предупреждение Google Maps API warning: NoApiKeys https://developersgoogle
Внизу приведён код методаПроблема в том, что когда сервер, отправляющий данный запрос перегружен, то он не может отправить данный запрос