2016-06-28 90 views
0

看來我的驗證將無法正常工作,如果我點擊提交按鈕,它只是刷新瀏覽器,不會驗證我的輸入,或者我不確定如果Javascript導致驗證將無法工作。首先,我將從基於用戶選項的empty()append()函數開始從其他文件追加我的註冊表單。輸入驗證不會提示錯誤

@section ('page-script') 

<script> 

    $(document).on("click", "#register", function() 
    { 
     $.get("accountRegister", function (data) 
     { 
      $("#accountBottomContainer").empty(); 
      $("#accountBottomContainer").append(data); 
     }); 
    }); 
</script> 

@endsection 

正如你可以在這裏看到下面,我在我的panel-body命名#accountBottomContainer

Screenshot

這裏,我附上我的register.blade.php如果追加register.blade.php用戶在添加panel-body之後點擊register按鈕,該按鈕具有id = accountBottomContainer

@section ('content') 

<div class = "row"> 

    <div class = "col-xs-12 col-md-8"> 

     <div class = "panel panel-default"> 

      <div class = "panel-heading"> 

       <h2>Account Dashboard</h2> 
       <hr> 

      </div> 

      <div class = "panel-body"> 

       <button type = "button" class = "btn btn-info" id = "register">Register Employee</button> 
       <button type = "button" class = "btn btn-info" id = "searchEmployee">Search Employee</button> 

       <div class = "row"> 
       <br> 
        <div class="col-md-10"> 

         <div class = "panel panel-default"> 

          <div class = "panel-body" style = "height: 500px" id = "accountBottomContainer"> 


          </div> 

         </div> 

        </div> 
       </div> 

      </div> 

     </div> 

    </div> 

</div> 

@endsection

與驗證表單

這裏,我遍歷每個錯誤以檢查用戶錯過填滿文本框之一。

@if (count($errors) > 0) 


<div class = "row"> 
    <div class = "col-md-6"> 
     <ul> 
      @foreach($errors->all() as $error) 
       <li>{{ $error }}</li> 
      @endforeach 
     </ul> 
    </div> 
</div> 

@endif 
<form class = "form-vertical" role = "form" method = "post" action = "{{ route ('account.accountRegister') }}"> 


    <div class = "form-group"> 

     <label for = "email" class = "control-label">Email Address</label> 
     <input type = "text" name = "email" class = "form-control" id = "email"> 

    </div> 

    <div class = "form-group"> 

     <label for = "username" class = "control-label">Username</label> 
     <input type = "text" name = "username" class = "form-control" id = "username"> 

    </div> 



    <div class = "form-group"> 

     <label for = "password" class = "control-label">Password</label> 
     <input type = "password" name = "password" class = "form-control" id = "password"> 

    </div> 

    <div class = "form-group"> 

     <button type = "submit" class = "btn btn-default">Sign Up</button> 

    </div> 

    <input type = "hidden" name = "_token" value = "{{ Session::token() }}"> 

</form> 

控制器

public function postRegister(Request $request) 
{ 
    $this->validate($request, [ 
          //This will be unique in users table 
     'email' => 'required|unique:users|email|max:255', 
     'username' => 'required|unique:users|alpha_dash|max:20', 
     'password' => 'required|min:6', 
    ]); 
} 

路線

Route::get('/accountRegister', 
[ 
    'uses' => '\App\Http\Controllers\[email protected]', 
    'as' => 'account.accountRegister', 
]); 

Route::post('/accountRegister', 
[ 
    'uses' => '\App\Http\Controllers\[email protected]', 
]); 
+0

考慮在您的HTML屬性的等號之前和之後沒有空格。它提高了可讀性! (注意:這不是解決您的問題,只是一個建議):http://stackoverflow.com/questions/3551541/using-spaces-before-and-after-the-sign-of-html-element-attribute –

回答

0

在你的JavaScript中,你使用#register ID,但我不能看到它的HTML端。這是一個錯誤嗎? 您應該使用:

$(document).on("submit", "#theIdOfYourFormTag", function() { 
+0

我更新了我的帖子,請再看看:) – Francisunoxx

+0

你有鏈接,我可以試試嗎? – hyde

相關問題