Обрезается строка при вставке

145
12 апреля 2022, 09:30

Хорошо, у меня есть следующая строка.

ViewBag.EntryFieldName = $"value=\"{Model.Title}\"";

Model.Title = Проверка времени

Отладку проводил, в переменную записывается нормально. Я ее начинаю использовать в HTML коде:

<input type="text" name="Title" @ViewBag.EntryFieldName class="form-control" />

Когда захожу на сайт вижу от этой строки лишь: "проверка

<input type="text" name="Title" value="&quot;проверка" &#x432;&#x440;&#x435;&#x43c;&#x435;&#x43d;&#x438;&quot;="" class="form-control">

Как фиксить?(

Answer 1

Вы же интерполируете строку сами, как я понял:

$"value=\"{Model.Title}\"";

Почему бы не достать $"value=\" и не разместить это сразу внутри тега:

<input type="text" name="Title" value="@ViewBag.EntryFieldName" class="form-control" />

Этот подход лучше, чем использование @Html.Raw(), так вы предотвратите возможность html инъекций.
Так же смущает название переменной Model. Если это модель, которая передаётся внутрь View() то ViewBag здесь совсем не нужен.
Если вам всё же крайне критично, чтобы всё значение переменнной оставалось таким:

ViewBag.EntryFieldName = $"value=\"{Model.Title}\"";

потому, что вы искользуете её где-то ещё именно в этом виде, то почему бы не создать дополнительную переменную

ViewBag.InputValue= Model.Title;

для отображения именно в

<input type="text" name="Title" value="@ViewBag.InputValue" class="form-control" />
Answer 2

Нашел решение, вместо <input type="text" name="Title" @ViewBag.EntryFieldName class="form-control" /> следует использовать <input type="text" name="Title" @Html.Raw(ViewBag.EntryFieldName) class="form-control" />

!!!!НО ВНИМАНИЕ!!!! этот html хелпер (@html.raw) может привести к нежелательным, а то и опасным, html инъекциям в ваш код. будьте аккуратны

READ ALSO
Навигация по сайту, как правильно?

Навигация по сайту, как правильно?

возникли проблемы с созданием навигационного менюКак правильно это сделать? Можно ли для вставки контента в "body" использовать iframe>,...

195
Как сделать бургер меню по диагонали?

Как сделать бургер меню по диагонали?

Нужно сделать бургер меню как в этом примере по диагонали https://wwwschindele-handel

114
Возможно ли запустить функцию, которая записанна в файле html, в файле js

Возможно ли запустить функцию, которая записанна в файле html, в файле js

Я только учусь программировать на js, поэтому не бейте, пожалуйста, тапками за тупой вопрос

137
Подогнать размер печати под формат бумаги

Подогнать размер печати под формат бумаги

Нужно распечатать html страницуВозникла проблема - она не подгоняется под размер бумаги для печати

101