Как добавить сложный HTML-код в строку в JavaScript? - PullRequest
0 голосов
/ 28 октября 2019

Я пытаюсь добавить элемент HTML к существующему через JavaScript. Это хорошо работает для простого кода HTML, но я получил ошибку для специальных символов.

Ошибка: «Сообщение об ошибке компилятора: CS1012: слишком много символов в литерале символов»

Изменение некоторых строккавычки в двойных кавычках не помогают, если я изменяю следующую появившуюся ошибку:

"Сообщение об ошибке парсера: Неопределенный строковый литерал. Строки, начинающиеся с кавычки ("), должны заканчиваться до конца строки. Однако строки, начинающиеся с @ и кавычки (@ "), могут занимать несколько строк. Закрытие тегов HTML внутри строкового литерала может вызвать это сообщение об ошибке."

Это для моего веб-приложения mvc asp.net.

Код:

 i++;
 var html = '<div> <p>Gold</p>' +
            '@Html.TextBoxFor(model => model.jGold[' + i + '].gram, new { @class = "form-control", @placeholder = "Gold Gram" })' 
            '</div>';
$('#dynamic_container').append(html);

Есть способ добавить эту строку в переменную?

Ответы [ 2 ]

0 голосов
/ 28 октября 2019

Используйте приведенный ниже printf эквивалент javascript

let num = 10;console.log (`Это $ {num} раз!`);

0 голосов
/ 28 октября 2019

@ Html - это синтаксис бритвы, и он скомпилирован .Net, но javascript не понимает синтаксис бритвы. Для достижения ожидаемого результата вы можете конвертировать ваш код

Из

i++;
 var html = '<div> <p>Gold</p>' +
            '@Html.TextBoxFor(model => model.jGold[' + i + '].gram, new { @class = "form-control", @placeholder = "Gold Gram" })' 
            '</div>';
$('#dynamic_container').append(html);

К

i++
 var html = '<div> <p>Gold</p>' +
        '<input type="text" name="jGold[' + i + ']" class="form-control" placeholder="Gold Gram" />'+
        '</div>';
$('#dynamic_container').append(html);
Над кодом будет работать то же самое
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...