【问题标题】:Javascript code is not working inside blade template LaravelJavascript 代码在刀片模板 Laravel 中不起作用
【发布时间】:2017-07-07 07:35:11
【问题描述】:

我正在使用 laravel-5.3。我正在尝试在我的刀片模板中添加一些代码。但似乎 JavaScript 代码无法正常工作。这是我的刀片模板。

@extends('layouts.app')
@section('scripts')

    <script type="text/javascript">
        $(document).ready(function() {
            var members = {!!  json_encode($member)  !!};
            var arr = [];
            var cities = new Bloodhound({
                datumTokenizer: Bloodhound.tokenizers.obj.whitespace('text'),
                queryTokenizer: Bloodhound.tokenizers.whitespace,
                local: members
            });
            cities.initialize();
            var elt = $('#researcher');

            elt.tagsinput({
                itemValue: 'value',
                itemText: 'text',
                allowDuplicates: false,
                interactive:true,
                typeaheadjs: {
                    name: 'cities',
                    displayKey: 'text',
                    source: cities.ttAdapter()
                }
            });
            console.log(members);
            var elt1 = $('#advisor');
            elt1.tagsinput({
                itemValue: 'value',
                itemText: 'text',
                allowDuplicates: false,
                interactive:true,
                typeaheadjs: {
                    name: 'cities',
                    displayKey: 'text',
                    source: cities.ttAdapter()
                }
            });

            $("#submit").click(function(event){
                $.ajax({
                    type: "POST",
                    url: '/storeresearch',
                    data: { _token: "{{ csrf_token() }}"},
                    success: function( msg ) {
                        console.log(msg);
                        window.location.replace('/researches');
                    }
                });
            });

        });
    </script>
@endsection

@section('content')
    <form id="hu" action="/storeresearch" method="POST">
        {!! csrf_field() !!}
        <label>Researcher</label>
        <input type="text" class="R_a" id="researcher" name="researchsupervisor_1">
        <label>Advisor</label>
        <input type="text" class="R_a" id="advisor" name="researchsupervisor_1">
        <input type="button" name="submit" id="submit" class="btn btn-primary" value="Add">
    </form>
@endsection

标签输入不起作用。我该怎么办。如果我在不扩展任何布局的情况下这样做,它就可以正常工作。在应用程序布局中,我在标题部分生成了脚本部分。

【问题讨论】:

  • 浏览器的错误控制台中是否显示任何内容?
  • 没有出现错误。我认为问题发生在 elt.tagsinput() 部分。因为如果我在该部分之前在控制台中打印任何内容,它会打印,但在该部分之后的控制台中没有打印任何内容
  • 告诉我们你在哪里添加库。
  • 实际上我收到了这个错误 "elt.tagsinput is not a function" 。我正在使用这些库

标签: javascript laravel-5 laravel-blade typeerror bootstrap-tags-input


【解决方案1】:

通过检查开发人员选项中的元素来检查您的代码,查看脚本加载的位置并确认它们包含在页面末尾。

还要记得使用@endsection 标签

【讨论】:

    猜你喜欢
    • 2014-11-15
    • 2016-03-11
    • 2013-06-04
    • 1970-01-01
    • 2017-07-31
    • 2013-02-03
    • 2018-05-28
    • 2019-05-15
    • 2014-04-03
    相关资源
    最近更新 更多