3

親愛なるすべて.異なる結果に対して1つのテキストフィールドのみを使用したい. チェックボックスまたは別のチェックボックスを数回押した後、結果がテキストフィールドに順番に表示される場合はどうすればよいですか。たとえば:

<input type="checkbox" id="see" value="a">
<input type="checkbox" id="saw" value="b">

<input type="text" id="field">
<input type="button" id="show">

それから私は次のようなことをします:

 1. click "see"
 2. click "show"
 3. click "see"
 4. click "show"
 5. click "saw"
 6. click "show"
 7. click "saw"
 8. click "show"
 9. click "see"
 10. click "show"

次に、テキスト フィールドの [表示] ボタンをクリックして結果を表示します。

aaba..and so on if any additional
4

2 に答える 2

2

単純な:

var values = "";
$('#see, #saw').click(function() {
  values += $(this).val();
});
$('#show').click(function() {
  $("#field").val(values);
});

checked=true チェックボックスのみを許可するには:

var values = "";
$('#see, #saw').click(function() {
 if($(this).is(':checked'))
    values += $(this).val();
});
$('#show').click(function() {
  $("#field").val(values);
});

編集済み:に機能を追加するShow Button

作業フィドルを参照してください

于 2010-09-01T05:31:25.090 に答える
1

次のようなことを試してください:

$('input:checkbox').click(function() {
  $('#field').val($('#field').val() + $(this).val());
});​

これが実用的なフィドルです。

チェックされた状態を作成するクリックのみを記録するバリアントが必要な場合は、割り当てを次のようにラップするだけです。

if( $(this).is(':checked') ) {...}
于 2010-09-01T05:28:56.593 に答える