在jquery窗体验证ajax没有响应

问题描述:

我想验证我的代码与jQuery。它的工作,但当它来到ajax它不加载任何页面。相反,我的路径是错误的或其他的东西。请帮我解决这个问题。在jquery窗体验证ajax没有响应

这是我的看法文件

admin_view.php

<?php include('assets/header.php'); ?> 

<div class="container"> 
    <h1>Welcome to Admin Login</h1> 
    <?if($this->session->flashdata('flashError')):?> 
    <p class='flashMsg flashError'> 
     <?= $this->session->flashdata('flashError') ?> </p> 
    <?endif?> 
    <!-- new line inserted --> 
    <form method="post" name="myForm" accept-charset="utf-8" class="login" id="form" > 
     <div class="form-group"> 
      <div class="col-xs-4"> 
       <!--<label for="admin">Admin</label> 
       <input type="text" name="admin" class="form-control" id="admin" value="" placeholder="admin name" />--> 
       Admin Name: <input type="text" name="admin" id="admin" class="form-control" value="<?php echo set_value('admin'); ?>" placeholder="admin name" > 
       <?php echo form_error("admin"); ?> 
       <p id='p1'></p> 
       <br> 
       <!-- <label for="password">password</label> 
       <input type="text" name="password" class="form-control" id="password" value="" placeholder="password" required/> 
       --> 
       Admin Password: <input type="password" name="password" id="password" class="form-control" value="" placeholder="password" > 
       <?php echo form_error("password"); ?> 
       <p id='p2'></p> 
       <br> 
       <br> 
       <input type="button" name="submit" value="submit" id="submit" class="btn btn-primary" > 
      </div> 
     </div> 
     <div class="error"></div> 
    </form> 
</div> 

<script> 
    $(document).ready(function() { 
     $("#submit").click(function() { 
      var admin = $("#admin").val(); 
      var password = $("#password").val(); 

      $("#returnmessage").empty(); // To empty previous error/success message. 
      // Checking for blank fields. 
      if (admin == '') 
      { 
       $('div.error').html("Please Fill Admin Required Fields"); 
      } else if (password == '') 
      { 
       $('div.error').html("Please Fill Password Required Fields"); 
      } else 
      {//alert('hello world'); 
       // Returns successful data submission message when the entered information is stored in database. 
       $.ajax({ 
        type: "POST", 
        url: "<?php base_url() ?>index.php/admin_login/login", 
        data: {"admin": admin, "password": password}, 
        dataType: "json" 

       }).done(function (data) { 
        if (data.error != "") 
        { 
         //alert('hello if'); 
         $('div.error').html(data.error); 
        } else 
        { 

         // alert('hello else'); 
         window.location.href="admin_view"; 
        } 

       }); 
      } 
     }); 
    }); 
</script> 


<?php include('assets/footer.php'); ?> 
+0

”相反,我的路径错了或其他什么“ - 您向我们展示了生成路径的PHP。因此,现在告诉我们该PHP的输出是什么(当您在浏览器中查看源代码时)以及路径应该是什么。 – Quentin

+0

我不知道如果ajax的url参数可以有它的php代码,但最后的php开放标签没有关闭一个... –

+0

试试这个:'url:“ index。 php/admin_login/login“' –

你必须提供错误的路径,一个AJAX网址,

url: "<?php base_url() ?>index.php/admin_login/login" 

这种说法不会直接运行,因为<?php base_url() ?>是一个PHP语句,你在JavaScript中使用这个,这是不可接受的。

使用这样的:

<script type="text/javascript">var path= "<?php echo base_url();?>";</script> 

写这个声明在你的头部分,该语句将定义基本URL路径变量,这是一个JavaScript变量,你可以在你的JavaScript代码中使用它。

然后附加网址,如:

url: path+"/index.php/admin_login/login", 

希望这将有助于你。 “

+0

012ie这一整段的JavaScript是由PHP生成的整体,所以这一切都在PHP下运行 – RiggsFolly