【问题标题】:jquery validation using remote to check email is already exists or not?使用远程检查电子邮件的 jquery 验证是否已经存在?
【发布时间】:2017-09-13 01:29:25
【问题描述】:

我正在使用 jquery 验证器插件来调用 ajax 函数我正在使用远程方法来检查电子邮件是否已经存在于我的数据库中,但是当我使用 ajax 调用时出现错误。 这是在我的验证函数中

 "email": {
                required: true,
                email: true,
                remote: "/adminuser/store"

            },

这是我的路线

 Route::post('/adminuser/store', 'Admin\AdminUserController@store')->name('admin.storeadminuser');

这是在我的控制器里面

$email_exists = Admin::where('email',$request->email)->exists();
        //echo $email_exists;
        if ( $email_exists ) { echo 'true'; } else { echo 'false'; }
        exit;

错误是

jquery.min.js:4 GET http://birdys.app/adminuser/store?email=karthigamm1995%40gmail.com 404 (Not Found)


【问题讨论】:

    标签: javascript php jquery ajax laravel-5.4


    【解决方案1】:

    在远程like中添加post方法,

    remote: {
            url: "/adminuser/store",
            type: "post",
            data: {
                email: function() {
                  return $( "#email" ).val();
                }
            }
    }
    

    Remote-method docs

    【讨论】:

    • 尝试url: "adminuser/store",从URL中删除起始/
    • 当我尝试这个时它显示加载资源失败:服务器响应状态为 404(未找到)
    【解决方案2】:

    改变它:

    Route::post('/adminuser/store', 'Admin\AdminUserController@store')->name('admin.storeadminuser');
    

    Route::get('/adminuser/store', 'Admin\AdminUserController@store')->name('admin.storeadminuser');
    

    ajax() 的默认方法是get,您的路由定义为post。所以把它改成get再试一次。

    或者在远程 ajax 调用中定义type: "post"

    【讨论】:

    • 是路由问题吗我的路由在组函数Route::prefix('admin')->group(function(){ Route::post('/adminuser/update/{id}', 'Admin\AdminUserController@update')->name('admin.updateadminuser');});
    • 答案是什么
    猜你喜欢
    • 2012-12-31
    • 2015-12-09
    • 1970-01-01
    • 1970-01-01
    • 2013-06-15
    • 2019-03-12
    • 2017-10-09
    • 2017-01-28
    • 1970-01-01
    相关资源
    最近更新 更多