В моем приложении мне нужно загружать данные в зависимости от категории.Что я делаю, когда кликаю по категории, вызывается функция клика, где я беру идентификатор категории и передаю методу $.post
на страницу php load_project.php
.На этой странице я выбираю проекты на основе идентификатора категории, и мне нужно отправить обратно выбранные строки в функцию успеха.Моя проблема в том, что когда я отправляю данные обратно, в моем массиве я получу только последнюю строку при предупреждении о данных.Я не знаю, куда я иду.Может кто-нибудь, пожалуйста, помогите мне.
Php-страница:
<script>
$(document).ready(function() {
$("#categorylink").click(function() {
cid = $(this).attr("data-cid");
$.post('load_project.php', { cid: "" + cid + "" }, function(data) {
alert(data); //here I get only one row, but there is actually 3 rows
});
});
});
</script>
<ul>
<a><li data-filter="all">>All</li></a>
<?php $get=$config->get_cat();
while($row = $get->fetch(PDO::FETCH_ASSOC)) {
?>
<a id="categorylink" data-cid="<?php echo $row['category_id'];?>">
<li>
<?php echo $row['category_name'];?>
</li>
</a> //this is my categories
<?php } ?>
</ul>
load_project.php
<?php
require_once 'config.php';
$config = new DBConfig;
if(isset($_POST['cid']))
{
$cid=$_POST['cid'];
$get=$config->getprojectbycategory($cid);
while($row=$get->fetch(PDO::FETCH_ASSOC)) {
$results['projects'] = $row;
}
echo json_encode($results);
}
?>
Из функции успеха я должен заполнить строки в сетке.Я не могу этого сделать.Поэтому в настоящее время я передаю идентификатор категории самой странице php через href и заполняю данные после перезагрузки страницы.Поскольку это не очень хороший способ загрузки данных, я хочу заменить его на jquery ajax.Пожалуйста, помогите мне.
Редактировать 1
Когда я пытаюсь так:
$results[] .= $row['project_name'];
Я получаю триимена проектов в оповещении: [[],"Private Palace","Private Villa F","23rd Floor Addax Tower"]