使用JavaScript显示Laravel变量



当我尝试dd($ conv)时,数据在那里,但是我仍然无法在脚本中显示它们。任何人都知道问题是什么,我尝试了很多方法,但它们似乎行不通。

  <h4>{{$row->transcript_text}}</h4>
    <?php $conv = json_encode($row->transcript_text); ?>
    <script type="text/javascript">
        function splitArray() {
            var myStr = <?php echo $conv; ?>;
            var strArray = myStr.split(/(?= | d)/);
            // Display array values on page
            for (var i = 0; i < strArray.length; i++) {
                $("body").addClass('col-lg-offset-1').append("<h4>" + strArray[i] + "</h4>");
            })
        }
        splitArray();
    </script>

我不知道您正在使用哪种版本的Laravel,但是将纯PHP嵌入HTML模板中的推荐方法与@php符号(CF DOC)一起使用。无论如何,这是我要避免的事情。相反,Laravel Blade具有做您想做的事情的本地方法。

@if(! empty($history))
    @foreach($history as $row)
    <script type="text/javascript">
        function splitArray() {
            var myStr = JSON.parse("{{json_encode($row->transcript_text) }}");
            var strArray = myStr.split(" | 0");
            // Display array values on page
            for (var i = 0; i < strArray.length; i++) {
                $("body").addClass('col-lg-offset-1').append("<h4>" + strArray[i] + "</h4>");
            }
        }
    </script>
    <body onload="splitArray()" style="color: lime">
    </body>
    @endforeach

最新更新