Javascript 截取并动态替换的问题

来源:百度知道 编辑:UC知道 时间:2024/06/20 02:25:47
<html>
<head runat="server">
<title></title>
<script type="text/javascript">
function StrReplace()
{
var es="_1|_2|_3|_4|_5|_6|_7|_8|_9|_10|_11";
var str="这是一张图片_1 And 这是第二张图片_2.这是三张图片_1 And 这是第四张图片_2...";

var enjoin=es.split("|");
for(var a=0; a<enjoin.length;a++){
//这样写只能替换第一张和第二张图片 ,问题所在要怎么改replace才能遍历所有呢?
str= str.replace(enjoin[a],"<img alt='' src='image/"+ enjoin[a] + ".GIF' />");

}
document.getElementById("hoho").innerHTML=str;
}
</script>
</head>
<body>
<div id="hoho">
<img src="image/_1.GIF" alt=""/>
</div>

楼主的代码只替换了第一个,其实可以用全局搜索替换
<script type="text/javascript">
function StrReplace()
{
var es="_1|_2|_3|_4|_5|_6|_7|_8|_9|_10|_11";
var str="这是一张图片_1 And 这是第二张图片_2.这是三张图片_1 And 这是第四张图片_2...";
var enjoin=es.split("|");
for(var a=0; a<enjoin.length;a++){
str= str.replace(new RegExp(enjoin[a],"ig"),"<img alt='' src='image/"+ enjoin[a] + ".GIF' />");

}
document.getElementById("hoho").innerHTML=str;
}
</script>

<script type="text/javascript">
function StrReplace()
{
var str="这是一张图片_1 And 这是第二张图片_2.这是三张图片_1 And 这是第四张图片_2...";
str = str.replace(/(_\d+)/g,"<img alt='' src='image/$1.GIF' />")
document.getElementById("hoho").innerHTML=str;