Error: [$parse:lexerr] http://errors.angularjs.org/1.2.21/$parse/lexerr?p0=Unterminated

Error: [$parse:lexerr] http://errors.angularjs.org/1.2.21/$parse/lexerr?p0=Unterminated

我正在尝试从我的数据库中提取数据以显示到表单中,但我一直收到此错误 错误:[$parse:lexerr] http://errors.angularjs.org/1.2.21/$parse/lexerr ?p0=Unterminated%20quote&p1=s%2055-56%20%5B'%5D&p2=report.incidentTime%20%3D'Couple'sNaNispute%20at%20Robinson%20Hall'。我在此网络应用程序中使用 laravel 和 angularjs(混合方法)。


HTML

<div class="col-xs-4 col-sm-4 col-md-4">
    <div class="form-group" data-ng-class="{'has-error': documentIncident.reportTitle.$invalid && documentIncident.reportTitle.$dirty}">
        <label for="incidentTime">Report Title</label>
        <input type="text" name="reportTitle" ng-model="report.reportTitle" ng-init=" report.incidentTime ='{{$reports[0]->reportTitle}}'" autocomplete="off" ng-minlength="6" class="form-control input-sm" required>
     </div>
</div>

数据库数据

我遇到的问题是撇号阻止显示数据。有没有办法解决这个问题,无论是通过过滤、转义还是任何其他方法?

问题是在 laravel 完成渲染到您的模板后,它看起来像这样:

ng-init="report.incidentTime ='Couple's dispute at Robinson Hall'"

由于Couple's中的'不匹配导致异常。你需要做的是

  1. 通过 API 加载数据,而不是直接将其渲染到 HTML(强烈推荐)
  2. 在 laravel 中使用字符串转义函数来确保呈现的字符串在 ' 例如之前有一个 \ these question answers