Laravel 4 + AJAX 不工作

Posted

技术标签:

【中文标题】Laravel 4 + AJAX 不工作【英文标题】:Laravel 4 + AJAX not working 【发布时间】:2013-10-10 00:50:04 【问题描述】:

我是 Laravel 4 的新手,我正在尝试测试 AJAX 请求。

在我的script.js 我有这个:

(function() 
  $("#login-submit").click(function(e) 
    e.preventDefault();
    return $.ajax(
      type: "POST",
      url: "laravel/ajax/login", //i put my public in "localhost/laravel/public/"
      cache: false,
      data: 'email:' + $("#email").val(),
      success: function(data) 
        return alert(data);
      ,
      error: function(response) 
        return alert("ERROR:" + response.responseText);
      
    );
  );

).call(this);

从这个 html 文件中调用:

<!DOCTYPE html>
<html>
<head>
    <title>Test</title>
</head>

<body>
    <form>
        <label for="email">Email: </label>
        <input type="text" id="email" />

        <label for="email">Password: </label>
        <input type="password" id="password" />

        <button id="login-submit">Log In</button>
    </form>

    <script type="text/javascript" src="assets/js/jquery/jquery.custom.js"></script>
    <script type="text/javascript" src="assets/js/script.js"></script>
</body>

</html>

控制器类:

class AuthController extends BaseController

    public function login()
    
        echo 'success';
    

和路由器:

Route::get('/', function() 
    return View::make('homepage');
);

Route::post('/ajax/login', 'AuthController@login');

点击Log In 应该会回显“成功”,但会抛出此错误:

ERROR:
    "error": 
        "type": "Symfony\\Component\\HttpKernel\\Exception\\NotFoundHttpException",
        "message": "",
        "file": "C:\\xampp\\htdocs\\laravel\\vendor\\laravel\\framework\\src\\Illuminate\\Routing\\Router.php",
        "line":1429
    

这有什么问题?

【问题讨论】:

解决url问题后控制器功能登录回显成功..??? @John: 确实,已经解决了,谢谢回答 您是否尝试使用 ajax 登录并出现验证错误。参考这篇文章wsnippets.com/create-ajax-login-laravel-4好一个 【参考方案1】:

在 AJAX 调用中,更改:

  url: "laravel/ajax/login",

收件人:

  url: "ajax/login",

你的路由正在监听ajax/login不是 laravel/ajax/login

阅读更多关于路线的信息here。

【讨论】:

是的,现在可以了,实际上现在还有一个问题,感谢您的回答 @user2002495 您可以随时在这里提交,我们很乐意提供帮助。 我可以知道谁否决了我的问题 - 即使它解决了问题? 我再次投了赞成票,我不知道投反对票的情况,对于任何投反对票的人来说都很奇怪

以上是关于Laravel 4 + AJAX 不工作的主要内容,如果未能解决你的问题,请参考以下文章

php laravel框架学习笔记 基本工作原理

Laravel/Ajax POST 500 内部服务器错误可能的原因

不允许 Laravel 和 Ajax 更新

方法验证不存在 - Laravel 5.4

Laravel 5.4 刀片和 select2 不工作

jquery .ajax函数与Laravel-4无法正常工作