我有几个复选框,当点击输出到textarea。这个位正在工作,但是在每个结果被列出之后,都有一个我不知道如何删除的逗号。此外,我想用一些文本预先加载textarea,并在下面列出结果而不覆盖预先加载的文本。到目前为止,我有这个追加数据到文本区域
function updateTextArea() {
var allVals = [];
$('.taglist :checked').each(function(i) {
allVals.push((i != 0 ? "\r\n" : "") + $(this).val());
});
$('#form1').val(allVals).attr('rows', allVals.length);
}
$(function() {
$('.taglist input').click(updateTextArea);
updateTextArea();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<textarea class="textfield" id="form1" name="form1">My text here</textarea>
<div class="taglist">
<label><input type="checkbox" value="Value 1">Value 1</label>
<label><input type="checkbox" value="Value 2">Value 2</label>
<label><input type="checkbox" value="Value 3">Value 3</label>
<label><input type="checkbox" value="Value 4">Value 4</label>
<label><input type="checkbox" value="Value 5">Value 5</label>
</div>
@ Connum这是完美的!非常感谢所有帮助。 – Greg
@Connum您的代码段不工作,打开代码段并检查“值1”,它只是删除换行符,但不会将“值1”添加到文本区域。取消选中“价值1”并检查“价值2”同样的问题。 - 如果在打开代码片段后首先检查“值1”,然后检查“值2”,它会显示“值1”而不是“值2”,因为您的线数最有可能是错误的,因为它看起来似乎增加了值而不是正确调整textarea的大小。 – Nope
它对我来说非常合适。你使用的是什么浏览器? – Connum