我搜索了该网站并找到了一些示例,我已经接近但还不够接近。 我有 2 个复选框,如果用户选中它们,它们就会被放置在文本区域中,如果用户删除复选框。该值被删除。我也想保留光标位置。
我可以添加,但它仍然很笨重。
我的 fiddle 是http://jsfiddle.net/pU2P9/18/
这是我的代码
测试。其他字段的值将插入此处。
<form>
<p>Favorite Color <label><input type="checkbox" value="Green" />Green</label>
<label><input type="checkbox" value="Red" />Red</label></p>
</form>
var textarea = document.getElementById("myTextArea1");
// $('input[type=checkbox]').click(function () {
$('input[type=checkbox]').change(function () {
var $parentForm = $(this).closest("form");
// var text = $(".insert-text", $parentForm).val();
var text = $('input[type=checkbox]:checked').val() + " ";
// var text = $('input[type=checkbox]:checked', $parentForm).val() + " ";
insertAtCursor(textarea, text);
});
function insertAtCursor(myField, myValue) {
if (document.selection) {
myField.focus();
sel = document.selection.createRange();
sel.text = myValue;
}
else if (myField.selectionStart || myField.selectionStart == '0') {
var startPos = myField.selectionStart;
var endPos = myField.selectionEnd;
myField.value = myField.value.substring(0, startPos) + myValue + myField.value.substring(endPos, myField.value.length);
}
else {
myField.value += myValue;
}
}
;
如有任何帮助,我们将不胜感激。
最佳答案
不确定确切您想要做什么,但您似乎有点困惑。
尝试类似的事情
$('input[type=checkbox]').change(function () {
if ($(this).is(':checked')) {
var text = $(this).val() + " ";
insertAtCursor(textarea, text);
}
});
关于javascript - 在 TextArea 中添加/删除复选框值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9773650/