codeigniter jquery表单提交

时间:2012-12-05 20:33:26

标签: jquery codeigniter

大家好我的表单似乎在提交和jquery中正常工作,虽然有两件事:它似乎没有通过信息,因为它不断添加0,0,0,0而不是我提交的内容表格。然后它不会刷新页面?可能是jquery丢失的东西?

在模型中插入函数:

    function entry_insert(){
    $this->load->helper('form'); 
    $this->load->helper('html'); 
    $this->load->database();
    $data = array(
              'title'=>$this->input->post('title'),
              'url'=>$this->input->post('url'),
          'jscore'=>$this->input->post('jscore'),
          'kscore'=>$this->input->post('kscore')
            );
    $this->db->insert('movies',$data);
  }

这是控制器函数,由jquery加载模型调用:

 public function addmovie()
{
        $this->load->model('Movie_model', '', TRUE);
        $this->Movie_model->entry_insert();
        return true;


}
视图中的

html表单:

<form class="form-signin" method="post" id="form-signin">
    <h4 class="form-signin-heading">Add a Movie</h4>
    <input type="text" class="input-block-level" placeholder="Movie Title" id="title">
    <input type="text" class="input-block-level" placeholder="URL" id="url">
    <input type="number" class="" min="1" max="100" placeholder="Jamies Score" id="jscore">
    <input type="number" class="" min="1" max="100" placeholder="Kellys Score" id="kscore">
    <button class="btn btn-large btn-primary" type="submit">Add</button>
  </form>

最后是jquery:

<script>
$(function(){
   $("#form-signin").submit(function(){
     dataString = $("#form-signin").serialize();

     $.ajax({
       type: "POST",
       url: "http://xxx.com/xx/index.php/welcome/addmovie",
       data: dataString,

       success: function(data){
           alert('Successful!');
       }

     });

     return false;  //stop the actual form post !important!

  });
});
</script>

谁能发现我做错了什么?并且可能帮助我的jquery刷新?

1 个答案:

答案 0 :(得分:0)

您的所有输入都没有name属性,这是读取服务器端值所必需的,而serialize()调用可能也没有返回任何内容。我猜你认为这是id的用途,但事实并非如此。

示例:

<input placeholder="Kellys Score" id="kscore">

应该是:

<input placeholder="Kellys Score" name="kscore" id="kscore">
<!--                   Needs this ^^^^^^^^^^^^^          -->