Codeigniter - 从下拉菜单中获取值并传递给控制器

3
我正在尝试从一个有3个选项的表单中传递值,因此当用户点击任何选项时,应该将该值传递给控制器。
我在想也许可以像 `onChange="selectedValue"` 这样做。我试图从视图中获取POST,但没有成功。
任何帮助都将不胜感激。
视图
            <label>Reports</label>
            <form>
            <select NAME="hours">
              <option value="24">24</option>
              <option value="12">12</option>
              <option value="1">1</option>

            </select>
            </form>

控制器

public function about()
{
    $search = $this->input->post('hours');

    echo $search;

    $this->load->view("about");
}
1个回答

4

通常情况下,您可以通过将视图中的表单提交到控制器中的函数来传递值。您可以向表单添加JavaScript代码,在选择选项时自动提交表单 - onchange="this.form.submit()"。(例如,而不是使用按钮。)

视图

<form method="post" accept-charset="utf-8" action="<?php echo site_url("yourcontroller/about"); ?>">
    <select name="hours" onchange="this.form.submit()">
        <option value="24">24</option>
        <option value="12">12</option>
        <option value="1">1</option>
    </select>
</form>

控制器

public function about()
{
    //Get the value from the form.
    $search = $this->input->post('hours');

    //Put the value in an array to pass to the view. 
    $view_data['search'] = $search;

    //Pass to the value to the view. Access it as '$search' in the view.
    $this->load->view("about", $view_data);
}

使用 $this->input->post('hours'); 我们可以获取下拉框的值,如果想要获取文本,我们该怎么做? - wiretext

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接