0

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

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

这是我目前拥有的,但它现在没有做任何事情。

索引页面:

<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);
        });
    });

创建页面

<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();
    }
}

我觉得我很接近。我只是缺少一些东西

任何帮助表示赞赏。

4

1 回答 1

0

简单的回答。我需要一个<div id="dialog">在索引页上。

于 2013-06-09T19:25:32.517 回答