0

ajax post を使用して入力値を正常に保存できましたが、次のページが読み込まれません。

クライアント側のコード:

<script type="text/javascript">
    function notifyEmail() {

      var form_data = {
                  'email':$('#inviteEmail').val()
                };
        alert($('#inviteEmail').val());
      $.ajax({
                  url: "<?php echo site_url('main/email_invites'); ?>",
                  type: 'POST',
                  data: form_data,
                  success: function(msg) {
                    return true;
                  }
            });
    }
  </script>

<input type='text' id='inviteEmail' placeholder='Enter email'/>
        <a href='#' name='email' id='invite-all' onclick='notifyEmail();' class='btn'>Notify Me</a>

コントローラーコード:

function email_invites()
    {
        $this->load->model('emailInvites');
        if($query = $this->emailInvites->saveEmailInvite())
        {
                $this->load->view('emailInvites');

        }
    }
4

2 に答える 2

2

私がすることは、あなたを助けることができる次のことです

<script type="text/javascript">
    function notifyEmail() {

      var form_data = {
                  'email':$('#inviteEmail').val()
                };
        alert($('#inviteEmail').val());
      $.ajax({
                  url: "<?php echo site_url('main/email_invites'); ?>",
                  type: 'POST',
                  data: form_data,
                  dataType:'json',
                  success: function(msg) {
                    if(msg.response)
                       //load the content in the body or wherever you want  
                       jQuery('body').load("<?php echo site_url('main/email_invites/show'); ?>"); 
                    else
                       console.log("Opps, Something wrong happend"); 
                    return true;
                  }
            });
    }
  </script>


    <input type='text' id='inviteEmail' placeholder='Enter email'/>
    <a href='#' name='email' id='invite-all' onclick='notifyEmail();' class='btn'>Notify Me</a>

コントローラーで

function email_invites($action = 'process')
    {
        if($action == 'process')
        {
               $this->load->model('emailInvites');
               $query['response'] = $this->emailInvites->saveEmailInvite(); 
               echo json_encode($query); 


        }
        else
        {
              $this->load->view('emailInvites');
        }
    }
于 2013-01-29T23:33:46.383 に答える
0

URL をエコーする必要はありません。このように ajax 呼び出しで使用するだけです。

$.ajax({
              url: 'main/email_invites',
              type: 'POST',
              data: form_data,
              success: function(msg) {
                return true;
              }
        });

site_urlメソッドが必要な URL を返す場合、ajax 呼び出しは、

 $.ajax({
              url: "<?php echo site_url('main/email_invites'); ?>",
              type: 'POST',
              data: form_data,
              success: function(msg) {
                return true;
              }
        });
于 2013-01-23T23:51:24.140 に答える