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

Javascript
图片展示效果 鼠标经过变大图,支持FF
可拖动可改变大小div的实现代码
javascript 随机广告代码(图片广告)
JS+Ajax+Jquery实现页面无刷新分页以及分组 超强的实现
JQuery 浮动导航栏实现代码
jQuery一步一步实现跨浏览器的可编辑表格,支持IE、Firefox、Safari、Chrome、Opera
js 分栏效果实现代码
基于jQuery的ajax功能实现web service的json转化
IE 条件注释详解总结(附实例代码)
用cssText批量修改样式
JavaScript 应用技巧集合[推荐]
jquery 导航设计实现代码 学习jquery的朋友可以看下
动态样式类封装JS代码
一步一步教你写一个jQuery的插件教程(Plugin)
使用jQuery的ajax功能实现的RSS Reader 代码
jquery tools 系列 scrollable(2)
jquery tools系列 overlay 学习
jquery tools系列 expose 学习
javascript十个最常用的自定义函数(中文版)
javascript 流畅动画实现原理

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 86 ::
收藏到网摘: 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);   //
 }
}

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