我搜索了該網站,並找到了一些示例,但接近但不夠接近。 我有2個複選框,如果用戶檢查他們,他們被放置在textarea,如果用戶刪除檢查。該值被刪除。我想保持光標位置。將複選框值添加/刪除到TextArea
我可以添加,但它仍然笨重。
我的小提琴是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;
}
}
;
任何幫助,將不勝感激。
非常接近。我只需要複選框刪除,如果它沒有選中,並很好。我可以繼續點擊複選框,並繼續添加,我需要刪除試圖想到你的解決方案的邏輯 – 2012-03-19 17:23:40
,而它沒有刪除,光標保持位置,並添加複選框的值完美。 – 2012-03-19 22:31:23