JavaScript — динамическая загрузка данных Ajax

У меня есть несколько функций jQuery, которые получают данные JSON из базы данных MySQL и отображают их на определенных страницах моего приложения.

У меня есть около 15 из этих функций, которые похожи на приведенные ниже, и я хотел бы привести их в порядок и преобразовать в одну основную функцию, которая возвращает данные на основе переменных, переданных в функцию. IE getdata (подписки) будет отображать подписки.

Моя проблема в том, что я не уверен, как передать имена столбцов в функцию из запроса ajax и удалить значение value.column-name из функции.

Пример функции из приложения

function GetSubscriptions(){
$.ajax({
url: 'jsondata.php',
type: 'POST',
dataType:'json',
timeout:9000,
success: function (response)
{
var trHTML = '';
$.each(response, function (key,value) {
trHTML +=
'<tr><td>' + value+
'</td><td>' + value.subscription_name +
'</td><td>' + value.subscription_cycle +
'</td><td>' + value.subscription_cost +
'</td><td>' + value.subscription_retail +
'</td><td>' + value.subscription_profit +
'</td><td>' + value.subscription_margin +
'</td><td>' + value.subscription_markup +
'</td></tr>';
});
$('#subscription-results').html(trHTML);
},
});
}

Любая помощь очень ценится, так как я довольно новичок в jQuery

-1

Решение

Вы можете обратиться к этому коду:

function GetSubscriptions(){
$.ajax({
url: 'jsondata.php',
type: 'POST',
dataType:'json',
timeout:9000,
success: function (response)
{
$('#subscription-results').html(parseColumns(response));
},
});
}
function parseColumns(columns) {
var html = '';

if (Object.prototype.toString.apply(columns) === '[object Array]') {
$.each(columns, function(key, value) {
html += parseColumn(value);
})
} else {
html += parseColumn(columns);
}

function parseColumn(column) {
var trHTML = '<tr><td>' + column + '</td>';

for (var key in column) {
trHTML += '<td>' + column[key] + '</td>'
}
trHTML += '</tr>';

return trHTML;
}

return html;
}
1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru
Adblock
detector