js实现在文本框光标处添加字符的方法介绍

 更新时间:2012年11月24日 15:17:17   作者:  
在开发应用中,经常会遇到一些技术上的问题,比如:怎样让js在文本框光标处添加字符,本文将以此问题进行详细介绍,需要了解的朋友可以参考下
复制代码 代码如下:

<script language="javascript" type="text/javascript">
function Button4_onclick(obj) {
obj.focus();
var rng=document.selection.createRange();
rng.setEndPoint("StartToStart",obj.createTextRange());
var eng=document.selection.createRange();
eng.setEndPoint("EndToEnd",obj.createTextRange());
var kone = document.getElementByIdx("Text1");
kone.value=rng.text + "插入字符" + eng.text;
}
</script>
<input id="Text1" type="text" value="1235467890"/>
<input id="Button4" type="button"
value="button" onclick="return Button4_onclick(Text1)" />

复制代码 代码如下:

<%@ Page Language="C#" AutoEventWireup="true" AspCompat="true" CodeBehind="WebForm1.aspx.cs"
Inherits="SJLERP.WebForm1" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<script type="text/javascript">
function setCaret(textObj) {
if (textObj.createTextRange) {
textObj.caretPos = document.selection.createRange().duplicate();
}
}
function insertAtCaret(textObj, textFeildValue) {
if (document.all) {
if (textObj.createTextRange && textObj.caretPos) {
var caretPos = textObj.caretPos;
caretPos.text = caretPos.text.charAt(caretPos.text.length - 1) == ' ' ? textFeildValue + ' ' : textFeildValue;
} else {
textObj.value = textFeildValue;
}
} else {
if (textObj.setSelectionRange) {
var rangeStart = textObj.selectionStart;
var rangeEnd = textObj.selectionEnd;
var tempStr1 = textObj.value.substring(0, rangeStart);
var tempStr2 = textObj.value.substring(rangeEnd);
textObj.value = tempStr1 + textFeildValue + tempStr2;
} else {
alert("This version of Mozilla based browser does not support setSelectionRange");
}
}
}
</script>
<form id="form1" action="" onsubmit="" method="post" enctype="text/plain">
<p>
<textarea name="tarea" rows="" cols="" style="width:300px;height:120px;"
onselect="setCaret(this);"
onclick="setCaret(this);"
onkeyup="setCaret(this);" >例子例子例 Forget Never 子例子例子 asp.net </textarea>
<br/><br/>
<input type="text" name="textfield" style="width:220px;" value="插入FireFox"/>
<br/>
<input type="button" value="插入"
onclick="insertAtCaret(this.form.tarea,this.form.textfield.value);"/>
</p>
</form>
</html>

相关文章

  • JavaScript 函数惰性载入的实现及其优点介绍

    JavaScript 函数惰性载入的实现及其优点介绍

    惰性载入表示函数执行的分支只会在函数第一次掉用的时候执行,在第一次调用过程中,该函数会被覆盖为另一个按照合适方式执行的函数,这样任何对原函数的调用就不用再经过执行的分支了
    2013-08-08
  • 使用原生js+canvas实现模拟心电图的实例

    使用原生js+canvas实现模拟心电图的实例

    下面小编就为大家带来一篇使用原生js+canvas实现模拟心电图的实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-09-09
  • javascript 变量声明 var,let,const 的区别

    javascript 变量声明 var,let,const 的区别

    这篇文章主要介绍了javascript 变量声明 var,let,const 的区别,变量声明,每种编程语言必不可少的语法,在javascript中,变量的声明相对其他语言来说,算是比较简单的。更多相关的具体内容需要的小伙伴可以参考一下
    2022-06-06
  • javascript构造函数以及原型对象的理解

    javascript构造函数以及原型对象的理解

    本文主要介绍了javascript构造函数以及原型对象的理解。分享了有关它们的实例代码,具有一定的参考价值,下面跟着小编一起来看下吧
    2017-01-01
  • 用JS写的一个TableView控件代码

    用JS写的一个TableView控件代码

    JS写的一个TableView控件代码,方便输出表格。
    2010-01-01
  • js实现微信聊天效果

    js实现微信聊天效果

    这篇文章主要为大家详细介绍了js实现微信聊天效果,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2020-08-08
  • javascript中的prototype属性实例分析说明

    javascript中的prototype属性实例分析说明

    一说到prototype很多人可能第一个想到的是著名的prototype.js框架,当然我们今天说的不是它,而是Javascript中的prototype属性,一般都被翻译为“原型”。这是一个比较特殊的属性,Javascript中的继承一般都依赖这属性实现。
    2010-08-08
  • js实现限定范围拖拽的示例

    js实现限定范围拖拽的示例

    这篇文章主要介绍了js实现限定范围拖拽的示例,帮助大家更好的制作js特效,美化自己的网页,感兴趣的朋友可以了解下
    2020-10-10
  • JavaScript中的scrollTop详解(滚动到顶部)

    JavaScript中的scrollTop详解(滚动到顶部)

    scrollTop是JavaScript中一个非常有用且重要的方法,它用于获取或设置元素的垂直滚动条位置,这篇文章主要给大家介绍了关于JavaScript中scrollTop详解(滚动到顶部)的相关资料,需要的朋友可以参考下
    2023-12-12
  • js继承call()和apply()方法总结

    js继承call()和apply()方法总结

    本文介绍了js继承当中的call和apply方法,从定义到常用实例都做了分析,非常的实用,推荐给小伙伴们。
    2014-12-12

最新评论