2012-02-27 5 views
0

私は4つの入力フィールドに2つのテキストと2つの隠しフィールドを持っています。他の入力テキストフィールドからjQueryで非表示フィールドの値を変更するにはどうすればよいですか?

HTML:

<input type="text" name="pie1" class="green" id="pie1" value="Hello"/> 
<input type="hidden" name="hPie1" value="green"> 
<input type="text" name="pie2" class="green" id="pie2" value="Goodbye"/> 
<input type="hidden" name="hPie2" value="green"> 

私のスクリプトコード:

<script> 
$(document).ready(function(){ 
$('input:text').click(function(){ 
    $(this).toggleClass('green red'); 
}); 
}) 
</script> 

質問:私は同時にトグルされるコヒーレントテキストフィールドのクラスに隠しフィールドの値を変更するにはどうすればよいです入力ボックスをクリックしますか? お寄せいただきありがとうございます。

答えて

0

問題の最初の速い解決策です。

<script> 
$(document).ready(function(){ 
    $('input:text').click(function(){ 
     $(this).toggleClass('green red'); 
     $(this).next().val($(this).attr('class')); 
    }); 
}) 
</script> 
+0

これはうまくいきました。どうもありがとう :) – nippon

0

`$(this).toggleClass( 'green red')の後。

$('input[name="h' + $(this).name() + '"]').val($(this).val())

メモを追加 - = $(this).name()要素が間違った構文を持っているかもしれないが、それはアイデアです。

+0

返信用のご用心スクリプトエラー "$(this).nameは関数ではありません"が表示されます。 – nippon

1
$(document).ready(function(){ 
$('input:text').click(function(){ 
    $(this).toggleClass('green red'); 
    $(this).next().val($(this).attr('class')); 
}); 
}) 

隠れた入力が常にテキスト入力の直後に来ると仮定します。

+0

テキスト入力から値を取得し、現在のトグルクラス名は取得しません。私が望むテキスト入力からの価値ではありません。それはクラスです。だから私はそれがとても難しいと思うのです。 – nippon

+0

$(this).attr( 'class')..を知りたいですか?更新された回答をご覧ください。 –

+0

ええ、カシアハシはうまく答えました。すべての助けをありがとう – nippon

関連する問題