在ajax调用之后第二次没有触发Document.ready

时间:2017-04-26 02:22:06

标签: php jquery ajax codeigniter

我在Php codeignter的视图中创建了一个按钮。

查看

<div id=div_signup>
      <input id="btnRegisterID" name="btnRegister" style="margin-right: 5px;" value="Register" type="button" class="btn btn-success"/>
</div

控制器

  public function register()
    {

        $this->load->view('MAIN\view_Register');

    }

点击此按钮后,我正在进行ajax调用,并且成功后,我再次在注册div中重新绑定相同的视图。 这意味着在第一个事件之后现在按钮被视图重新加载。

Ajax电话:

    $(document).ready(function()
        {

 $("#btnRegisterID").on("click", function()
            {
                     $.ajax({
                type:'POST',
                url:'http://localhost/Voyager/Main/register',
                data:{},
                success:function(){
              $("#div_signup").load('http://localhost/Voyager/Main/register');
                },
                failure:function(){
              alert("nooo"); 
                }             
            });
        });          
});

第一次点击它工作正常,ajax调用成功。

但是在第二次点击时没有发生任何事情。

浏览器控制台没有错误。

有人可以帮忙吗。

我在这里错过了什么吗?

更新 在ajax调用成功后,我将上面的代码更改为location.reload()。仍有问题尚未解决。

 success:function(){
              location.reload();
                },

4 个答案:

答案 0 :(得分:0)

尝试这个 成功移除

$("#div_signup").load('http://localhost/Voyager/Main/register');

更换

location.reload();

答案 1 :(得分:0)

将按钮点击事件更改为此

$(document).on('click', '#btnRegisterID', function () {
// You ajax Code

})

答案 2 :(得分:0)

尝试window.location.reload()而不是location.reload();

答案 3 :(得分:0)

在面板外面拿按钮部分为我工作。

然而,我的架构存在问题。如果没有完整的页面刷新保持数据更新,则无法在jquery中部分加载视图。

感谢您的帮助。