2013-04-25 4 views
12

Я пытаюсь добавить дополнительный текст в конец абзаца с помощью jQuery. Я думал о создании такой структуры:jQuery добавить текст внутри существующего абзаца абзаца

Судя по моим ответам, я уточню. Мне нужно сначала создать эту структуру. И это та часть, которую я нахожу сложной, а не второй конечный результат. Так как же я динамически создавать это:

<p>old-dynamic-text<span id="add_here"></span></p> 

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

<p>old-dynamic-text<span id="add_here">new-dynamic-text</span></p> 

Я играл с .wrapAll() метод, но Я не могу получить желаемый эффект. Это лучший способ сделать это (и если да, то как), или есть другой способ добавить новый текст в конец существующего абзаца (который нужно обернуть в тег определенного типа, так как мне нужно по-разному стилизовать его) ?

ответ

28

Попробуйте это ...

$('p').append('<span id="add_here">new-dynamic-text</span>'); 

ИЛИ если есть существующий диапазон, сделать это.

$('p').children('span').text('new-dynamic-text'); 

DEMO

+0

Я уверен, что добавит срок после элемента абзаца, а не в него. Таким образом, это закончило бы

, а не

. Если не добавлять метки вокруг р заставляет его вести себя по-разному (в том, что это просто опечатка? – sage88

+0

добавил скрипку ссылку, проверить его. –

+0

я считаю, результат будет

если вы используете Append. –

0

Если вы хотите append текст или HTML в span, то вы можете сделать это, как показано ниже.

$('p span#add_here').append('text goes here'); 

append добавит текст в тег span в конце.

заменить весь текст или HTML внутри диапазона вы можете использовать .text() или .html()

+0

Эй, я изменил свой вопрос, чтобы быть более понятным, проверьте выше. – sage88

3

Попробуйте

$('#add_here').text('new-dynamic-text'); 
+0

Эй, я уточнил, что мой вопрос будет более ясным, проверьте выше. – sage88

+0

Хорошо, тогда см. решение Махеша Сапкала. даст вам желаемый результат ..;) –

Смежные вопросы