3

亲爱的。我只想使用一个文本字段来获得不同的结果。如果我想在按下几次复选框或另一个复选框后,结果将按顺序出现在文本字段中,我该怎么办。例如:

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