当前位置: 首页 > 图文教程 > 网络编程 > Javascript > 实现textarea内字符串选择查询替换功能

Javascript
MooTools教程(3):数组管理DOM元素
MooTools教程(4):函数和MooTools
MooTools教程(5):事件处理
MooTools教程(6):操纵HTML DOM元素
MooTools教程(7):设置和获取样式表属性
MooTools教程(8):输入过滤-数字
MooTools教程(9):输入过滤-字符串
MooTools教程(10):Fx.Tween渐变
MooTools教程(11):Fx.Morph、Fx选项和Fx事件
MooTools教程(12):Drag.Move来实现拖放
MooTools教程(13):正则表达式
MooTools教程(14):定时器和Hash对象
MooTools教程(15):滚动条(Slider)
浏览器对Cookie的限制
图片不间断滚动的特效代码详细讲解
Javascript教程:拖放效果研究
不唐突的JavaScript
JavaScript教程:图片切割效果
认识AJAX了解AJAX优点缺点和运用
网页投票系统中的限制

Javascript 中的 实现textarea内字符串选择查询替换功能


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 307 ::
收藏到网摘: n/a

 

----------自动替换版----------


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<SCRIPT LANGUAGE="JavaScript">
var staus ;
var oRange;
var objTimer;
var objTimer1;
var objTimer2;
var sBookMark;
<!--
function selectall(objAll,OBJSingle){
alert(objAll.checked);
for (var i=0;i<OBJSingle.length;i++){
if (objAll.checked){
for( objs in OBJSingle){
alert(objs.value);
objs.checked=true;
}
}
else{
OBJSingle.checked=false;
}
}
}

function fnSearch() {
fm1.txtarea1.focus();
oRange = fm1.txtarea1.createTextRange();
searchtxt(1);
}

function searchtxt(n){
var v1;
var v2;
var txtr;
var blnS;

window.clearInterval(objTimer1);
window.clearInterval(objTimer2);

v1 = fm1.txtarea1.value;
v2 = fm1.txtarea2.value;
v3 = fm1.txtarea3.value;

if( n == 1) {
if (oRange != null) {
oRange.findText(v2);
if  (oRange.findText(v2) == true){
//sBookMark = oRange.getBookmark();
oRange.select();
oRange.scrollIntoView();
objTimer2 = window.setInterval("searchtxt(2)",1000);
}
else{
objTimer = window.setInterval("searchtxt(3)",1000);
}
}
staus = 2 ;
}
else if(n==2)  {
oRange.text = v3;
staus = 1;
objTimer1 = window.setInterval("searchtxt(1)",1000);
}
else if(n==3) {
staus = 3 ;
window.clearInterval(objTimer);
window.clearInterval(objTimer1);
window.clearInterval(objTimer2);
}
}
//-->
</SCRIPT>
</HEAD>
<BODY>
<FORM METHOD=POST name="fm1">
<TEXTAREA NAME="txtarea1" ROWS="20" COLS="50">
this is the original text, and this is the string will be repalced.
this is the original text, and this is the string will be repalced.
this is the original text, and this is the string will be repalced.
this is the original text, and this is the string will be repalced.
this is the original text, and this is the string will be repalced.
this is the original text, and this is the string will be repalced.
</TEXTAREA>
<TEXTAREA NAME="txtarea2" ROWS="20" COLS="50"> will be </TEXTAREA>
<TEXTAREA NAME="txtarea3" ROWS="20" COLS="50"> has been </TEXTAREA>
<input type="button" value="search" onclick="fnSearch()">
</FORM>

</BODY>
</HTML>

--------------------------------手动改进版----------------------------------------

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<SCRIPT LANGUAGE="JavaScript">
var oRange;     // save the current textrange 
var intCount = 0;   // this pos of current textrange in the total count
var intTotalCount = 0;  // total count
<!--
//==============================================
//function : fnSearch()
//comment  : Search the text
//param    : none
//return   : none
//author   : Fantiny
//Date     : 10/21/2005
//==============================================
function fnSearch() {

 var strBeReplaced;
 var strReplace;

 strBeReplaced = fm1.txtarea2.value;
 strReplace = fm1.txtarea3.value;

 fnNext();

 fm1.txtarea1.focus();
 oRange = fm1.txtarea1.createTextRange(); //Create a textRange for the Textarea

 
 // Find the text by findtext method
 for (i=1; oRange.findText(strBeReplaced)!=false; i++) {
  if(i==intCount){  
   oRange.select();   // select the finded text
   oRange.scrollIntoView(); // scroll the page and set the text Into View
   break;
  }
  oRange.collapse(false);   //
 }
}

//========================================