Доброго времени суток. На сайте было реализовано модальное окно, со всеми движениями денег в кассе. Но потребовалось сделать это не модальным окном, а отдельной страницей с добавлением html и php кода. Модальное окно было реализованы через JS в большом файле php с кучей функций
confirm:
function get_income_expenses(elem) {
var model = { };
modal_window('Отчёт ', '<div style="max-height: 600px;" id="income-expenses" data-bind="template: { name: \'income-expenses-tmpl\' }"></div>', 800, 100);
ajax({ func: 'get_income_expenses', location_warehouse_id: jQuery('#title .text1').attr("id").replace('warehouse_', '') }, function (data) { model = ko.mapping.fromJSON(data); ko.applyBindings(model, jQuery('#income-expenses')[0]); });
}
и там же формировалась такая таблица:
<script id="income-expenses-tmpl" type="text/html">
<div>
<table border="1" cellspacing="0" cellpadding="2" style="width: 75%" align="center">
<thead>
<tr>
<th>Время</th>
<th>Приход</th>
<th>Расход</th>
<th>Комментарий</th>
<th>Автор</th>
</tr>
</thead>
<tbody data-bind="foreach: entities">
<tr>
<td data-bind="text: $data.time"></td>
<td data-bind="text: $data.income"></td>
<td data-bind="text: $data.expense"></td>
<td data-bind="text: $data.comment"></td>
<td data-bind="text: $data.author"></td>
</tr>
</tbody>
</table>
</div>
</script>
и ещё была эта же функция в контроллере:
function get_income_expenses() {
$model = IncomeExpenseHistoryDb::GetAll($_POST['location_warehouse_id']);
return json_encode($model);
}
Всё это я объединил в одном файле, чтобы таблица сразу вставлялась между html кодом, но таблица не появляется, а появляется ошибка:
Uncaught TypeError: Cannot read property 'replace' of undefined
Вроде сделал все тоже самое, взял код где эта функция задавалась, но не сработала. Сам я в JS почти ничего не понимаю, и поэтому сложно разобраться самому