使用远程检查电子邮件的jquery验证是否已经存在?

时间:2017-04-17 12:15:46

标签: javascript php jquery ajax laravel-5.4

我正在使用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)


2 个答案:

答案 0 :(得分:0)

改变它:

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"

答案 1 :(得分:0)

在遥控器中添加post方法,

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

Remote-method docs