亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

將數據傳遞給 javascript 但反斜杠太多

將數據傳遞給 javascript 但反斜杠太多

PHP
慕碼人2483693 2023-06-18 15:59:41
我正在將數據從我的控制器傳遞到 javascript。public function index()    {        $events = Eventcalendar::get()->pluck('event');        return view('eventcalendar.index',compact('events'));    }這是我在刀刃上做的<script type="text/javascript">  var data = {!! $events !!}  console.log(data) //the result is in the screenshot</script>如何刪除 JSON 數據中的反斜杠?注意:事件列數據類型為 JSON我正在使用 LARAVEL 7謝謝
查看完整描述

4 回答

?
胡說叔叔

TA貢獻1804條經驗 獲得超8個贊

你需要在控制器中解碼你的 json


  public function index()

        {

            $events  = json_decode(Eventcalendar::get()->pluck('event'));

            return view('eventcalendar.index',compact('events'));

        }


查看完整回答
反對 回復 2023-06-18
?
互換的青春

TA貢獻1797條經驗 獲得超6個贊

根據Laravel 文檔

呈現 JSON


有時,您可能會將一個數組傳遞給您的視圖,目的是將其呈現為 JSON 以初始化 JavaScript 變量。例如:


<script>

? ? var events = <?php echo json_encode($events); ?>;

</script>

但是,您可以使用 @json Blade 指令而不是手動調用 json_encode。@json 指令接受與 PHP 的 json_encode 函數相同的參數:


<script>

? ? var events = @json($events);


? ? var events = @json($events, JSON_PRETTY_PRINT);

</script>


查看完整回答
反對 回復 2023-06-18
?
湖上湖

TA貢獻2003條經驗 獲得超2個贊

通過添加解決它

protected $casts = [ 
       'event' => 'array'
    ];


查看完整回答
反對 回復 2023-06-18
?
梵蒂岡之花

TA貢獻1900條經驗 獲得超5個贊

如果您可以控制后端代碼,IE,您正在向后端發送請求,您可以添加JSON_UNESCAPED_SLASHES作為函數的第二個參數json_encode來停止轉義字符,所以它應該看起來像這樣:json_encode($res, JSON_UNESCAPED_SLASHES)。


如果您必須在 Javascript 中處理此問題,則可以使用JSON.parse(string)并迭代數組中的每個條目。


您可能會使用這樣的東西;初始化一個新數組newData并將解析后的數據推入其中:


var newData = []

data.forEach(element => {

  newData.push(JSON.parse(element))

})


查看完整回答
反對 回復 2023-06-18
  • 4 回答
  • 0 關注
  • 196 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號