2017-05-07 67 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