jQuery内容文本替换插件

本文由清尘发表于2014-01-26 14:14最后修改于2014-11-26属于jQuery分类

JS代码:

		$("p").each(function(){
			var obj=$(this).text();
			var newobj=obj.replace("《每日业绩报告》","<a href=\"xxx\">《每日业绩报告》</a>");
				$(this).html(newobj);
		});

HTML代码:

<p>关于abc的发布时间2《每日业绩报告》</p>
<p>发布时间《每日业绩报告》</p>

jQuery插件版:
可以同时替换多个文本。数组参数里对应

(function($){
		$.fn.myTxtReplace=function(options){
			var defaults={
				oldtxt:[],
				newtxt:[]
			};
			var opts=$.extend(defaults,options);
			this.each(function(){
				var obj=$(this).text();
				for(var i=0; i<opts.oldtxt.length; i++){
					var newobj=obj.replace(opts.oldtxt[i],opts.newtxt[i]);
					obj=newobj;
				};
				$(this).html(newobj);
			});
		}
	})(jQuery)

插件使用:

$("p").myTxtReplace({
		oldtxt:["《每日业绩报告》","abc","2"],
		newtxt:["<b>《每日业绩报告6》</b>","sss","<a href=\"xxx\">5555</a>"]
	});