как показать данные без имени свойства - PullRequest
0 голосов
/ 02 ноября 2018

Проблема, с которой я сталкиваюсь, заключается в том, что я хочу отображать данные в таблицу, а не отображать их, используя имя свойства, поскольку в нем много полей. Вот мой код:

$.ajax(settings).done(function (response) {
             var parse = JSON.parse(response)
             var temp = []
             var temprow = []
             // var tempcol = []
             var data = JSON.parse(parse.GridData)
             var temp2 = valuesToArray(data[0])
              var editdata = data
              console.log(editdata)
              for (var j =0; j < editdata.length; j++) {
              var tempObjectValues= Object.values(editdata[j])      
                  for(var i = 0; i < tempObjectValues.length ; i++ ){
                        Array.prototype.push.apply(temp, [tempObjectValues[i]]);
                  }
                  temprow.push(temp)
              }
              console.log(temprow,"row")
)}

Мой результат дублируется, если в моих текущих данных есть 2 строки, тогда он будет повторять данные в таблице, где вы можете увидеть результат

Это данные разбора, которые есть в json

{
BTU: "12",
Brand: "12as",
Color: "asd",
Coolant: "123",
CoolingPower: "213",
CountryOfMNF: "asd",
Current: "213",
EER: "123",
EnergyRating: "ASD",
HeatingPower: "213",
Id: "1",
InputPowerheating: "231",
InputpowerCooling: "31",
IsInverter: "12",
IsVerified: "1",
MarketPrice: "21",
MaximumPower: "123",
Model: "asd",
OEMURL: "321",
RatedPower: "213",
Reviews: "ASD",
SEER: "213",
Sales_URL: "123",
Series: "sa",
Size: "1",
TypeID: "1",
YearOfMNF: "11121",
}

Это только первые данные индекса массива из моего массива. Я хочу этот массив как все значение свойства без имени свойства в другом массиве

1 Ответ

0 голосов
/ 02 ноября 2018

New Обновил мой ответ. Попробуйте как ниже

$.ajax(settings).done(function (response) {
    var parse = JSON.parse(response);
    var temp = [];
    var temprow = [];
    // var tempcol = [];
    var data = JSON.parse(parse.GridData);
    var temp2 = valuesToArray(data[0]);
    var editdata = data;
    temprow = editdata.map(function(i) { return Object.values(i); });       
    console.log(temprow,"row")
)}

Старый

Вам нужно инициализировать temp = [] внутри начала первого цикла for. Попробуйте как показано ниже:

$.ajax(settings).done(function (response) {
    var parse = JSON.parse(response);
    var temp = [];
    var temprow = [];
    // var tempcol = [];
    var data = JSON.parse(parse.GridData);
    var temp2 = valuesToArray(data[0]);
    var editdata = data;
    for (var j =0; j < editdata.length; j++) {
        var tempObjectValues= Object.values(editdata[j])
        temp = [];
        for(var i = 0; i < tempObjectValues.length ; i++ ){
            Array.prototype.push.apply(temp, [tempObjectValues[i]]);
        }
        temprow.push(temp)
    }
    console.log(temprow,"row")
)}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...