2013-09-09 7 views
0

У меня есть имя <form> (без id) с некоторыми текстовыми и входными элементами. Мне нужно изменить формат текста на стиль заголовка.JQuery измените текст на заголовок

<form name="myform"> 
    <br/> 
    Text Snippet #1<br/> 
    <input type="text"><br/> 
    <br>Text Snippet #2</br><br/> 
    <input type="text">`<br/> 
</form>`<br/> 

Таким образом, в приведенном выше примере, текст Snippets # 1 & 2 должны быть украшены <h1>Text Snippet #1</h1> и <br><h1>Text Snippet #2</h1></br> соответственно.

+2

Вам не нужно закрывающий тег
. –

+0

Я не вижу здесь вопроса, не можете ли вы просто отредактировать источник? –

ответ

0

Вы можете .filter() и .wrap() им:

$('form[name=myform]').contents().filter(function() { 
    return this.nodeType === 3 && $.trim(this.nodeValue).length; 
}).wrap('<h1/>'); 

http://jsfiddle.net/AWJs4/

+0

Что сработало, ради производительности было бы безопасно опустить проверку $ .trim (this.nodeValue) .length? –

+0

@PavanLulla Удаленная часть не слишком сильно изменяет производительность, она просто выравнивает значение совпадающего 'textNode', если вы его опустите, у вас будут пустые элементы заголовка. – undefined