2016-07-16 2 views
1

Я получаю динамический HTML с сервера, который я хочу разместить в iframe. Это работает:.?.NET MVC/Javascript избегают одиночных кавычек из динамического HTML

document.getElementById('iframe').contentWindow.document.write('@Html.Raw(Data)'); 

Проблема заключается в том, что данные (HTML, что я получаю), могут содержать "и„ который будет конфликтовать с моим“s окружая HTML-данные Любой способ решить эту

ответ

1

Я решил это сам я использовал @Html.JavaScriptStringEncode :)

1

надежный способ кодирования значений в JavaScript в представлении Razor является использование Json.Encode():.

document.getElementById('iframe') 
    .contentWindow.document.write(@Html.Raw(Json.Encode(Data))); 

Обратите внимание, что во всем значении нет ', так как Json.Encode() создает корректный буквенный язык JavaScript.

Смежные вопросы