Просмотреть файл product_grid
<div data_id="<?php echo $ro['category_id']; ?>" name="id" class="cbp-filter-item">
<?php echo $ro['category_name']; ?></div>
// try to post data using ajax
<script type="text/javascript">
$(document).ready(function() {
$('.cbp-filter-item').click(function(){
var id=$(this).attr('data_id');
// alert(data_id);
jQuery.ajax({
url:"<?=base_url()?>.index.php/Home/product_grid",
type:'POST',
data: {"id":id},
success:function(data) {
alert(data);
}
});
});
});
</script>
Услышьте, я могу передать идентификатор для просмотра, но не работает должным образом, пожалуйста, помогите мне решить эту проблему
Controller ::
public function product_grid()
{
$id= $this->input->post('id');
}
0
Vidhi Patel
15 Июн 2017 в 14:46
Ты все сделал правильно, а в чем твоя проблема ?? "передать значение данных контроллеру с помощью ajax" что означает ??
– kishor10d
15 Июн 2017 в 14:49
1
ТИПО: url: " = Base_url ()?>. Index.php / Home / product_grid", опечатка удалить точку перед index.php в URL-адресе ajax
– JYoThI
15 Июн 2017 в 14:49
1
Достигает ли вызов ajax действия вашего контроллера? потому что URL " = base_url ()?>. index.php / Home / product_grid" мне кажется странным
– Ghassen Rjab
15 Июн 2017 в 14:49
2 ответа
Вы должны использовать print
или echo
, в противном случае на стороне клиента не будет ответа, поэтому используйте echo
, например,
public function product_grid(){
$id= $this->input->post('id');
echo 'Data-Id is: '.$id;
}
И используйте URL-адрес, например,
url:"<?=base_url()?>index.php/Home/product_grid", // let there is / in the end of base_url()
Код AJAX,
jQuery.ajax({
url:"<?=base_url()?>index.php/Home/product_grid",
type:'POST',
data: {id:id}, // no need of quotes to JSON Object keys
success:function(data) {
alert(data);
}
});
3
Rohan Kumar
16 Июн 2017 в 09:50
Привет, Рохан. Это тоже неправильно.
– Vidhi Patel
16 Июн 2017 в 08:34
Проверьте консоль своего браузера на наличие ошибок и убедитесь, что запрос AJAX выполнен правильно.
– Rohan Kumar
16 Июн 2017 в 08:41
Я получаю данные правильно, но не отправляю контроллеру
– Vidhi Patel
16 Июн 2017 в 09:28
I Chcked и eroor alert могут быть запущены и отображать html-код. и не оповещать об успешной функции
– Vidhi Patel
16 Июн 2017 в 09:40
1
Дайте мне ваш рабочий URL-адрес кода, иначе вам придется проверить код вашего контроллера. Я думаю, у вас есть ошибки в PHP-коде. Включите журналы в файле конфигурации и проверьте его на наличие ошибок.
– Rohan Kumar
16 Июн 2017 в 13:19
<script type="text/javascript">
$(document).ready(function() {
$('.cbp-filter-item').click(function(){
var id=$(this).attr('data_id');
// alert(data_id);
jQuery.ajax({
url:"<?=base_url()?>+index.php/Home/product_grid",
type:'POST',
data: {"id":id},
success:function(data) {
alert(data);
}
});
});
});
</script>
url:"<?=base_url()?>+index.php/Home/product_grid"
Используйте + для объединения вместо.
0
Komal G.
15 Июн 2017 в 14:50
Оператор конкатенации используется для добавления нескольких строк в JS, а не в одну строку.
– Rohan Kumar
15 Июн 2017 в 14:54
Привет.
– +
в строке действительно не будет делать то, что вы думаете, вам нужно будет закрыть строку, поставить плюс и снова открыть ("<?=base_url()?>"+"index.php/Home/product_grid"
). Однако в данном случае это действительно не нужно.
Félix Gagnon-Grenier
29 Июл 2017 в 22:18
Похожие вопросы
Новые вопросы
javascript
По вопросам программирования на ECMAScript (JavaScript / JS) и его различных диалектах / реализациях (кроме ActionScript). Включите все соответствующие теги в свой вопрос; например, [node.js], [jquery], [json] и т. д.