如果在视图中它是空的,如何在 JavaScript 中传递一个变量?

所以,我创建了一个报告系统,但在最后一步,我有一个小问题......在 JavaScript 中,我使用数据库中的一个变量用于 Ajax,但是当一个帖子没有评论时,我得到Undefined variable: key.


这是我的脚本


if (isset($key)){

    $('#yourFormIdComment{{$key+1}}').submit(function(e){

    e.preventDefault();

    var data = $(this).serialize();

    $.ajax({

    method:'POST',

    url:'/career_report_comment',

    data:data,

    success: function (result) {

            // do something with result

        }

    });

    });

}



这是我对变量的看法


@foreach($opinionComment as $key => $comments)

    <div class="news-v3 bg-color-white">


<h4 style="font-size: 13px">

        {{ $comments->user->username }}</h4>

    <p>{{ $comments->comments }}</p>

        <ul class="post-shares post-shares-lg">

<li @if ($key === 0) class="active" @endif  style="float: right;left: 20px;bottom: 30px"><a data-toggle="modal" data-target="#exampleModalComment{{$key+1}}" href="javascript:void(0)" ><i class="rounded-x icon-flag"></i></a></li>

</ul>


        </div>

@endforeach

{{$key+1}}我的问题是......即使帖子没有评论/评论,我如何从脚本中传递变量?因为只有当我对帖子有评论时才会发生这种情况。


隔江千里
浏览 153回答 1
1回答

Smart猫小萌

安德鲁我在评论中交谈并检查了你的代码后,我可能已经找到了解决你问题的方法。你得到一个错误:Undefined variable: key您收到该错误是因为未定义密钥。if (isset($key)){&nbsp; &nbsp; $('#yourFormIdComment{{$key+1}}').submit(function(e){&nbsp; &nbsp; e.preventDefault();&nbsp; &nbsp; var data = $(this).serialize();&nbsp; &nbsp; $.ajax({&nbsp; &nbsp; method:'POST',&nbsp; &nbsp; url:'/career_report_comment',&nbsp; &nbsp; data:data,&nbsp; &nbsp; success: function (result) {&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; // do something with result&nbsp; &nbsp; &nbsp; &nbsp; }&nbsp; &nbsp; });&nbsp; &nbsp; });}在代码的第一部分中,您使用变量 $key,但在代码第二部分的 foreach 中定义了密钥。这就是你得到错误的原因。
打开App,查看更多内容
随时随地看视频慕课网APP