я использую http://js-grid.com для моего приложения PHP. Я выбираю эту библиотеку для встроенного редактирования / обновления / добавления / удаления. Теперь хочу посмотреть $variables
или же $array
данные, которые будут поступать из базы данных. Вот сценарий
<script>
$(function() {
$("#jsGrid").jsGrid({
pageButtonCount: 5,
deleteConfirm: "Do you really want to delete the client?",
controller: db,
fields: [
{ name: "Name", type: "text", width: 150 },
{ name: "Age", type: "number", width: 50 },
{ type: "control" }
]
});
});
</script>
в приведенном выше коде я получил свойство под названием controller
который оказывает db (data)
, db
исходит из файла db.js
, Файл выглядит следующим образом:
(function() {
var db = {
loadData: function(filter) {
return $.grep(this.clients, function(client) {
return (!filter.Name || client.Name.indexOf(filter.Name) > -1)
&& (!filter.Age || client.Age === filter.Age)
&& (!filter.Address || client.Address.indexOf(filter.Address) > -1)
&& (!filter.Country || client.Country === filter.Country)
&& (filter.Married === undefined || client.Married === filter.Married);
});
},
insertItem: function(insertingClient) {
this.clients.push(insertingClient);
},
updateItem: function(updatingClient) { },
deleteItem: function(deletingClient) {
var clientIndex = $.inArray(deletingClient, this.clients);
this.clients.splice(clientIndex, 1);
}
};
window.db = db;
db.countries = [
{ Name: "", Id: 0 },
{ Name: "United States", Id: 1 },
];
db.clients = [
{
"Name": "Otto Clay",
"Age": 61,
},
{
"Name": "Connor Johnston",
"Age": 73,
}
];
}());
Также я следовал за GitHub Docs https://github.com/tabalinas/jsgrid-php. Но я не могу понять, как мне разместить php $variable or $array
на мой взгляд, а также javaScripts
,
Что я хочу:
Я хочу позвонить $array
в раздел javaScripts как controller : db
,
Ошибка:
Когда я использую controller: <?php echo $array; ?>', its returning null cause I can not call as they called as default from
db.js`
Пожалуйста, помогите мне, как я могу позвонить php $variable or $array
вместо controller: db
в javaScript
Заранее спасибо.
controller
Опция определяет поведение, вы не можете поместить туда статические данные.
Но есть вариант данные где вы можете поместить статические значения (как в вашем примере из php).
Другой вариант для вас — определить controller.loadData
:
controller: {
loadData: function() {
return $.ajax({
type: "GET",
url: "/clients/"});
},
и на сервере вы обслуживаете запрашиваемую информацию
switch($_SERVER["REQUEST_METHOD"]) {
case "GET":
$result = $clients->getAll();
break;
...
}
header("Content-Type: application/json");
echo json_encode($result);
Вы можете найти реализацию в репозиторий jsgrid-php.
Других решений пока нет …