javascript - 使用 ajax 使用不同的值重新加载页面

标签 javascript php jquery ajax codeigniter

我有一个默认显示所有测试事件的页面(初始页面 View )

我的 Controller :

public function testController()
{
   $category = 0; //NEED TO BE CHANGED WHEN USER SELECTED TEST EVENT 2 AND GET ALL EVENTS (Category 2)
   $getEventsBasedOnCategory = //DB QUERY TO GET ALL EVENTS (Category 0)
   //Pass all events to view
}

我的 HTML 页面:

<select id = "event_filter">
  <option value="" selected="selected" disabled>SELECT Event</option>
  <option value="0">All Test Events</option>
  <option value="2">Test Event 2</option>
</select>

我的ajax请求:

$("#event_filter").change(function(){
    $.ajax({
           url: '/site/example/displayEvents',
           data: {
               event_filter: $("#event_filter").val()
           },
           async: false,
           type: 'POST',
           success: function(data){

           },
    });

});

我的问题是如何将类别更改为 2(如果用户在选择框中选择了 2)并再次从数据库请求并在网站上显示类别 2 的事件?

顺便说一句,我正在使用 codeigniter。谢谢

谢谢,抱歉打扰你们了。

最佳答案

抱歉我的英语不好。

首先,要从 codeigniter 中的 post 检索数据,请使用 $this->input->post('event_filter')

如果您正在调用“/site/example/displayEvents”,则在此函数“displayEvents”中,您必须调用模型中的函数。

public function displayEvents(){
    $data->variableToSend = $this->example_model->events_data($this->input->post('event_filter'));
    $this->load->view('nameOfViewToDisplayData',$data);
}

View 是ajax调用的结果,然后你可以将它放在div中。

success: function(data){
   $('#target_div').html(data);
},

关于javascript - 使用 ajax 使用不同的值重新加载页面,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26276881/

相关文章:

javascript - 如何创建一个可以作用于 future 元素的函数?

javascript - React教程函数calculateWinner(squares)不明白

javascript - 在 Woocommerce 中将 Paypal 按钮与 "Add to Cart"对齐

javascript - 从几个下拉列表中获取值

PHPSESSID 未保存到 cookie

php - SQL WEEK() 给出与日期 ('W' 不同的周数)

javascript - 如何根据下拉列表更改所选行的背景颜色

php - PHP 中的 Javascript 警报框。弹出警报时删除灰色/白色背景

javascript - 通过使用 jquery 单击缩略图来切换照片位置

jquery - Yii:部分渲染并以 JSON 格式返回 AJAX