【发布时间】:2025-11-24 04:45:01
【问题描述】:
我正在使用我刚刚在 SO 上找到的以下功能,它可以解决我的问题,只有一个问题是,我有一个很长的选择列表,当用户选中超过 3-4 个复选框时添加到 textarea 上的文本或值不再可见。有什么办法可以让每次检查框时添加到文本区域的文本始终可见?任何帮助是极大的赞赏。
-先谢谢了!
<input type="text" value="" class="textfield" id="video0_tags" name="video0_tags">
<div class="taglist">
<label><input type="checkbox" value="2D Animation">2D Animation</label>
<label><input type="checkbox" value="3D Animation">3D Animation</label>
<label><input type="checkbox" value="Animatronics">Animatronics</label>
<label><input type="checkbox" value="Architectural">Architectural</label>
<label><input type="checkbox" value="Cartoon">Cartoon</label>
<label><input type="checkbox" value="Cell Animation">Cell Animation</label>
<label><input type="checkbox" value="Character Animation">Character Animation</label><label><input type="checkbox" value="Cut & Paste">Cut & Paste</label>
<label><input type="checkbox" value="Doodle">Doodle</label>
<label><input type="checkbox" value="HDR">HDR</label>
<label><input type="checkbox" value="High Speed">High Speed</label>
<label><input type="checkbox" value="Illustration">Illustration</label>
<label><input type="checkbox" value="Live Action">Live Action</label>
<label><input type="checkbox" value="Macro">Macro</label>
<label><input type="checkbox" value="Motion Design">Motion Design</label>
<label><input type="checkbox" value="Motion Graphics">Motion Graphics</label>
<label><input type="checkbox" value="Moving Installation">Moving Installation</label>
</div>
function updateTextArea() {
var allVals = [];
$('.taglist :checked').each(function() {
allVals.push($(this).val());
});
$('#video0_tags').val(allVals)
}
$(function() {
$('#video0_tags input').click(updateTextArea);
updateTextArea();
});
【问题讨论】:
-
那么您是否希望每次添加内容时文本区域都增大?
-
是不是说textarea的内容溢出了?你可以强制滚动。
-
您说的是“textarea”,但您的代码显示文本
input。它们非常不同,您指的是哪一种? -
您想确保最近检查的项目是最显眼的,还是只是确保它可以(例如滚动)查看?
-
@kappa 感谢您的澄清。对不起,当我使用 textarea 这个词时我错了。它是我所指的输入。我想确保最近检查的项目是最显眼的,就像extragravy所说的任何想法一样?
标签: javascript jquery html checkbox textarea