Как я могу использовать многострочное значение для атрибута HTML-тега? (например, как я могу избежать новой строки?)
Как включить новую строку в атрибут тега HTML?
Например:
<a href="somepage.html" onclick="javascript: foo('This is a multiline string.
This is the part after the newline.')">some link</a>
Изменить: Извините, неудачный пример, что, если тег оказался не в javascript, скажите:
<sometag someattr="This is a multiline string.
This is the part after the newline." />
Изменить 2. Оказывается, что новая строка в строке не была моей проблемой, это была функция javascript, которую я вызывал. FWIW, "
" может использоваться для новой строки в атрибуте HTML.
Ответы
Ответ 1
Из того, что я помню о стандарте HTML, объекты символов работают в атрибутах, поэтому это может сработать:
<sometag someattr="This is a multiline string. This is the part after the newline." />
Я не уверен, что "новая линия", которую вы хотите, должна быть & # 10; (\n) или & # 13; & # 10; (\ r\n), и я не уверен, что браузеры будут интерпретировать его так, как вы хотите.
Зачем вам это нужно? Какую конкретную проблему вы пытаетесь решить, добавив новую строку в атрибут HTML-тега?
Ответ 2
Чтобы включить многострочное значение, просто продолжайте текст атрибута html в следующей строке в вашем редакторе, например.
<input type="submit" value="hallo
hallo">
поставит второй hallo под первым
Ответ 3
Как правило, новые символы в атрибутах сохраняются, поэтому ваш второй пример будет работать нормально. Вы попробовали? Можете ли вы привести конкретный пример, где у вас проблемы с ним?
В качестве теста взгляните на это: -
<a href="somepage3.html" onclick="javascript: alert(this.getAttribute('thing'))" thing="This is a multiline string.
This is the part after the newline.">some link</a>
Предупреждение включает в себя новую строку в атрибуте.
Ответ 4
<a href="somepage.html" onclick="javascript: foo('This is a multiline string. \
This is the part after the newline.')">some link</a>
Javascript нуждается в обратной косой чертой в конце новой строки в строке.
Ответ 5
Я не уверен, но вы можете попробовать \r или\n
javascript: foo('This is a multiline string.\rThis is the part after the newline.')
или
javascript: foo('This is a multiline string.\nThis is the part after the newline.')
Ответ 6
Обычно разрывы строк в исходном коде HTML показывают, что вы намеревались в результате.
(Зависит от редактора, конечно)
Ответ 7
Так как это в Javascript, вы должны использовать "\n", если внутри двойных кавычек (не положительно в отношении одиночных кавычек, я был в PHP много в последнее время.
Честно говоря, стоит упомянуть, что вы должны использовать Events и делегат вместо размещения javascript-событий непосредственно в элементе.