此方法对于IE 下的textfield支持不好,运行时,插入顺序错乱。
换成textarea后即可。
function insertAtCursor(myField, myValue) {
var input = document.getElementById(myField.id);
input.focus();
if (Ext.isIE) {
sel = document.selection.createRange();
document.selection.empty();
sel.text = myValue;
}
else if (input.selectionStart || input.selectionStart == '0') {
var startPos = input.selectionStart;
var endPos = input.selectionEnd;
input.value = input.value.substring(0, startPos)
+ myValue
+ input.value.substring(endPos, input.value.length);
} else {
input.value += myValue;
}
}
换成textarea后即可。
function insertAtCursor(myField, myValue) {
var input = document.getElementById(myField.id);
input.focus();
if (Ext.isIE) {
sel = document.selection.createRange();
document.selection.empty();
sel.text = myValue;
}
else if (input.selectionStart || input.selectionStart == '0') {
var startPos = input.selectionStart;
var endPos = input.selectionEnd;
input.value = input.value.substring(0, startPos)
+ myValue
+ input.value.substring(endPos, input.value.length);
} else {
input.value += myValue;
}
}
本文介绍了一个JavaScript函数,用于解决Internet Explorer浏览器中输入文本时出现的问题。该函数通过判断浏览器类型并采用不同方法实现文本的正确插入。适用于IE和其他现代浏览器的Textarea元素。

被折叠的 条评论
为什么被折叠?



