JS заменить не работает на строку [дубликат]

Возможно, вы ищете Environment.Exit(int errorcode)

23
задан Quadrant6 1 September 2012 в 21:41
поделиться

2 ответа

.replace() возвращает новую строку (она не изменяет существующую строку), поэтому вам потребуется:

answer_form = answer_form.replace(/#/g, question_num); 

Вы, вероятно, также должны сделать question_num строкой, хотя автоматические преобразования типов, вероятно, справятся с этим. для вас.

Рабочий пример: http://jsfiddle.net/jfriend00/4cAz5/

К вашему сведению, в Javascript строки являются неизменяемыми - существующая строка никогда не изменяется. Таким образом, любой метод, который вносит изменения в строку (например, concat, replace, slice, substr, substring, toLowerCase, toUpperCase и т. Д.) ВСЕГДА возвращает новую строку .

96
ответ дан jfriend00 1 September 2012 в 21:41
поделиться

Ваш код правильный. Просто добавьте значение к переменной следующим образом:

answer_form = '<textarea name="answer_#" rows="5"></textarea>'+
              '<input type="file" name="img_#" />';

question_num = 5;

answer_form = answer_form.replace(/#/g, question_num); 
9
ответ дан ffffff01 1 September 2012 в 21:41
поделиться
Другие вопросы по тегам:

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