2017-05-07 63 views
1

我有一些困難時間讓select2 js lib在laravel工作,控制檯中沒有錯誤。我的刀文件:Laravel 5.4刀片和select2不能正常工作

@extends('layouts.app') 

@section('content') 
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script> 
<link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/css/select2.min.css" rel="stylesheet" /> 
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.3/js/select2.min.js"></script> 
<div > 
    <div class="row"> 
     <div class="col-md-8 col-md-offset-2"> 
      <div class="panel panel-default"> 
       <div class="panel-heading">Dodaj nowy podmiot</div> 
       <div class="panel-body"> 
        <div > 
         <div> 
          <form> 
           <div class="form-group"> 
            <select class="js-example-basic-single"> 
             <option value="AL">Alabama</option> 
             <option value="WY">Wyoming</option> 
            </select> 
           </div> 
          </form> 
         </div> 
        </div> 
       </div> 
      </div> 
     </div> 
    </div> 
</div> 
<script> 
    $(".js-example-basic-single").select2(); 
</script> 
@endsection 

它只是改變了項目的CSS,但選擇即使它的點擊沒有反應,不顯示選項,下拉菜單沒有出現。

有沒有人遇到過這樣的問題?

回答

1

玉傢伙,我已經在我的佈局葉片評論這條線解決了這個問題:

<!-- <script src="{{ asset('js/app.js') }}"></script> !--> 

因此,包括在laravel默認的js文件與選擇2庫造成問題的原因。

感謝您的幫助

+0

太好了。請接受你自己的回答:) –

+0

我會:)。需要等待18個小時,直到我能夠接受它。 –

+0

是否有任何解決方案沒有評論app.js,因爲我們在其他一些頁面中也使用了佈局刀片。如果我們註釋掉,那麼默認的jquery將不起作用。 – balaraman

0

你是否試過在ready子句內包裝select實例化代碼?

$(document).ready(function() 
{ 
    $(".js-example-basic-single").select2(); 
} 

編輯:

你缺少你的JavaScript導入類型= 「文/ JavaScript的」。如果沒有該標籤,某些瀏覽器將不會執行JavaScript。試着解決這個問題,看看它是否有效。

+0

是的,我已經試過了,但後來它表明,選擇2也不是那麼我假設它涉及到laravel如何呈現葉片方式的功能。 –

+0

Laravel刀片渲染只是簡單地用HTML/JS創建一個字符串。它並不影響你的JS如何被執行。這可能是因爲瀏覽器收到的HTML沒有正確的jQuery/select2庫導入。 – user3010273

+0

您在腳本導入中缺少type = text/javascript。這是錯的。 – user3010273