2012-01-08 5 views
0

でフォーム入力を置き換えるためのjQueryを使用:このコードにjQueryのは、このコードをtranformするために使用することができ、その値

<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> 

感謝を。

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

テストされていないが、それは

+0

はいできます。あなたが書いたコードにはどんなエラーがありますか? –

+0

@RoryMcCrossan:まだコードを書いていないので、jQueryの新機能です。 – Psyche

+0

質問の絞り込みを試みてください。あなたは別のウェブサイトをスクラップしていますか、あなた自身を変更しようとしていますか?どのような試みをしましたか? –

答えて

0

この場合には、あなたは、例えば使用することができます。

+0

...値にHTMLの特殊文字が含まれていれば? –

+0

@boobiq:うまく動作します、ありがとう! – Psyche

+0

これは動作しますが、scessorの答えははるかに優れており、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()); 
}); 
関連する問題