2012-01-08 3 views
0

Может Jquery быть использован для того, чтобы tranform этот код:Использование JQuery для замены поля ввода формы с их значением

<table> 
    <tr> 
     <td><input type="text" name="a1" value="Input value 1" /></td> 
     <td><input type="text" name="a2" value="Input value 2" /></td> 
     ... 
     <td><input type="text" name="a10" value="Input value 10" /></td> 
    </tr> 
</table> 

в этот код:

<table> 
    <tr> 
     <td>Input value 1</td> 
     <td>Input value 2</td> 
     ... 
     <td>Input value 10</td> 
    </tr> 
</table> 

Спасибо.

+0

Да, это возможно. Какие ошибки вы получаете с кодом, который вы написали? –

+0

@RoryMcCrossan: Я еще не написал никакого кода, я вроде как новый для jQuery. – Psyche

+0

Попробуйте сузить свой вопрос. Вы просматриваете экран другого веб-сайта, пытаетесь ли вы изменить его? Какие попытки вы сделали? –

ответ

0

в этом случае, вы можете использовать, например:

$('input[type="text"]').each(function() 
{ 
    $(this).parent('td').html($(this).val()); 
}); 

проверялось, но это должно быть достаточно

+0

... и если значение содержит специальные символы HTML? –

+0

@boobiq: отлично работает, спасибо! – Psyche

+0

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

3
$('td').each(function() { 
    $(this).text($(this).find('input').val()); 
}); 

Также см этот example.

+0

+1, единственный правильный ответ до сих пор. –

+0

@ T.J.Crowder. Я полагаю, что невозможно интерпретировать HTML вместо того, чтобы кодировать его, поскольку текст может быть желательным? Я вижу логику '$ .text()', но я не думаю, что '$ .html()' по своей сути ошибочен. –

+0

@JaredFarrish: Посмотрите мой комментарий на ответ boobiq. –

1
$('td').each(function(){ 
    var elem = $(this); 
    elem.text(elem.find('input[type="text"]').val()); 
}); 
Смежные вопросы