Код JavaScript, незавершенный строковый литерал

Мой голос переходит к Подрывной деятельности. Это очень мощно, все же просто в использовании, и имеет некоторые большие инструменты как TortoiseSVN.

, Но поскольку другие сказали передо мной, ТОЛЬКО ЗАПУСТИТЕ ИСПОЛЬЗУЯ IT. Управление исходным кодом является такой важной частью процесса разработки программного обеспечения. Никакой "серьезный" проект программного обеспечения не должен быть без него.

6
задан user400654 6 December 2018 в 21:32
поделиться

3 ответа

Вашим строкам нужен символ продолжения, если вы собираетесь запускать строковые литералы на нескольких строках. Поместите символ "\" в конец каждой строки или используйте конкатенацию строк. Другими словами, вы можете превратить неправильный:

$html='<li><div class="above">' + $question_number + 'Question Title</div>
<div class="middle"> ... ';

в:

$html='<li><div class="above">' + $question_number + 'Question Title</div>\
 <div class="middle"> ... ';

или:

$html='<li><div class="above">' + $question_number + 'Question Title</div>' +
    ' <div class="middle"> ... ';

. На самом деле вам не нужно , чтобы ваш HTML был хорошо отформатирован, но, если вы действительно хотите, чтобы он был форму, которую вы можете красиво распечатать, вы также можете вставить в нее встроенные символы новой строки:

$html='<li><div class="above">' + $question_number + 'Question Title</div>\n' +
    '<div class="middle"> ... ';

Для удобочитаемости кода я бы использовал что-то вроде:

$html = \
    '<li>' +
    '  <div class="above">' + $question_number + 'Question Title</div>' +
    '  <div class="middle">' +
    '    <input type="text" name="question' + $question_number+ '" size="55"/>' +
    '  </div>' +
    '  <div class="below">' + $question_number + 
    '    <input type="text" name="option' + $question_number +
    '      " size="6"/>' + $question_number +
    '    <input type="text" name="option' + $question_number + '" size="6"/>' +
    '    <input class="btn" type="button" name="Submit" value="Add" />' +
    '    <input class="btn" type="button" name="Submit" value="Remove" />' +
    '  </div>' +
    '</li>';

, а затем пропустил его через компрессор, чтобы получить гораздо более короткую версию для распространения .

15
ответ дан 8 December 2019 в 14:43
поделиться

Вы всегда можете просто объединить его части в несколько строк, например:

$html='<li><div class="above">'+$question_number+ 'Question Title</div>';
$html+= '<div class="middle"> <input type="text" name="question'+$question_number;   
$html+=' size="55"/></div>';

и т. Д.

1
ответ дан 8 December 2019 в 14:43
поделиться

Вы можете использовать массивы для хранения фрагментов разметки, а затем использовать метод соединения для получения полной разметки:

a = new Array(20);
a[0]='<li><div class="above">'
a[1]= $question_number
a[2]= 'Question Title</div>'
a[3]= '<div class="middle">'
a[4]= '<input type="text" name="question'
a[5]= $question_number
a[6]= '" size="55"/></div>'
a[7]= '<div class="below">'
a[8]= $question_number
a[9]= '<input type="text" name="option'
a[10]=$question_number
a[11]= '" size="6"/>'
a[12]=$question_number
a[13]='<input type="text" name="option'
a[14]=$question_number
a[15]='" size="6"/>'
a[16]='<input class="btn" type="button" name="Submit" value="Add" />'
a[17]='<input class="btn" type="button" name="Submit" value="Remove" />'
a[18]='</div>'
a[19]='</li>'

$html = a.join('');
0
ответ дан 8 December 2019 в 14:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: