Php 通过codeigniter将视图作为对话框传递

Php 通过codeigniter将视图作为对话框传递,php,jquery,codeigniter,jquery-ui-dialog,Php,Jquery,Codeigniter,Jquery Ui Dialog,我想做的不是加载一个单独的页面将数据输入数据库,而是弹出一个对话框,在提交时,它会将数据添加到数据库并刷新页面 例如:我在索引页上,想向datagrid添加另一个条目。我会单击一个按钮,添加一个新条目。弹出一个对话框,我在其中添加信息,然后点击submit。然后它将刷新并保留在索引页上 这是我目前拥有的,但它现在没有任何作用 索引页: <div id="createEntry"> <button>Create new item</button> <

我想做的不是加载一个单独的页面将数据输入数据库,而是弹出一个对话框,在提交时,它会将数据添加到数据库并刷新页面

例如:我在索引页上,想向datagrid添加另一个条目。我会单击一个按钮,添加一个新条目。弹出一个对话框,我在其中添加信息,然后点击submit。然后它将刷新并保留在索引页上

这是我目前拥有的,但它现在没有任何作用

索引页:

<div id="createEntry">
   <button>Create new item</button>
</div>

$("button")
    .button().click(function(){
        $.post('<?php echo base_url(); ?>test/create', function(response){
            $('#dialog').html(response);
        });
    });
我觉得我很接近。我只是错过了一些东西


非常感谢您的帮助。

简单回答。我在索引页上需要一个

$config['global\u xss\u filtering']是真是假?
$config['global\u xss\u filtering']
是假
<div id="dialog" title="Create new test case">

   <?php echo form_open(base_url() . 'test/create') ?>
    <label for="title">Title</label><br />
    <input type="text" name="title" /><br />

   <label for="something">Something</label><br />
   <textarea name="something"></textarea><br />

   <input type="submit" name="submit" value="Create" /> 
</div>

<script>
    $("#dialog").dialog();
</script>
public function create()
{
    //...
    //some code here for validation
    //
    if ($this->form_validation->run() === FALSE)
    {
        $this->load->view('templates/header', $data);
        $var = $this->load->view('test/create', '', TRUE);
        $this->load->view('templates/footer');
    }
    else
    {
        //adds to db
        $this->test_model->set();
    }
}