Я вернул list<object>
из моего контроллера, он успешно записан в success()
в ajax, так как это список, в котором может быть n-количество объектов, я хочу динамически создавать табличные данные и заполнять их, повторяя data
, но я не могу получить доступ к элементам внутри data
объекта, как показывают данные консоли, фактические элементы обернуты внутри внешнего объекта, а мой цикл for - внешний.пожалуйста, смотрите прикрепленный скриншот
Пожалуйста, обратитесь к этой ссылке для ссылки на изображение: Журнал консоли
Ajax-вызов контроллера:
function getSelectedTableRecords(tableId) {
if (tableId != null && tableId != '') {
$.ajax({
type: "POST",
url: baseUrl + "search",
data: {
tableId: tableId
},
success: function (data) {
for (var i = 0; i < data.length; i++) {
var item = data[i];
$('#applicationList > tbody').append(
'<tr>'
+ '<td><h4>' + item.userId + '</h4></td>'
+ '<td><h4>' + item.firstName + '</h4></td>'
+ '<td><h4>' + item.lastName + '</h4></td>'
+ '<td><h4>' + item.rollNo + '</h4></td>'
+ '<td><h4>' + item.contact + '</h4></td>'
+ '<td><h4>' + item.email + '</h4></td>'
+ '<td><h4>' + item.gender + '</h4></td>'
+ '</tr>');
insideData(data);
}
},
fail: function (data) {
alert('Failed to fetch records.');
}
});
} else {
// ...
}
}
MyКод контроллера:
@RequestMapping(value = "/search", method = RequestMethod.POST)
@ResponseBody
public List<Object> fetchTableData(@RequestParam("tableId") String tableId) {
List<Object> userList = new ArrayList<>();
try {
System.out.println(" table id id " + tableId);
if (tableId != null) {
List<UserInfo> l = userInfoDao.findById(tableId);
userList.add(l);
}
return userList;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
Согласно скриншоту, я получил только одну строку со всеми значениями undefined
, что я хочу сделать, на изображении у меня есть элементы 7
, поэтому я хочу повторить иЯ хочу, чтобы семь строк и соответствующие им столбцы были заполнены значениями.Пожалуйста, предложите мне решение.