var str1 = "<a href='http://www.abcd.{0}.html'>{0},{1}</a>:Col1,Col2";
//将两个字段存入数组
var arrColnum = str1.split(":")[1].split(",");
var innerhtml = str1.split(":")[0];
//将{0},{1}替换成字段Col1,Col2对应的值
//data.arrColnum[i],就是获取字段的值,这里不必考虑
//问题在正则表达式上,这么写把{i}作为了正则表达式
//我想要的是{0},{1},...做为正则表达式,怎么写?谢谢
for (var i=0;i<arrColnum.lenght;i++) {
innerhtml =innerhtml.replace(/{i}/g,data.arrColnum[i]);
}
alert(innerhtml); 问题补充:
innerhtml =innerhtml.replace(/{0}/g,data.arrColnum[i]);
innerhtml =innerhtml.replace(/{1}/g,data.arrColnum[i]);
这么写无问题,均可以得到数据,但是 var str1 里也许有{2},{3},,,{n}
//将两个字段存入数组
var arrColnum = str1.split(":")[1].split(",");
var innerhtml = str1.split(":")[0];
//将{0},{1}替换成字段Col1,Col2对应的值
//data.arrColnum[i],就是获取字段的值,这里不必考虑
//问题在正则表达式上,这么写把{i}作为了正则表达式
//我想要的是{0},{1},...做为正则表达式,怎么写?谢谢
for (var i=0;i<arrColnum.lenght;i++) {
innerhtml =innerhtml.replace(/{i}/g,data.arrColnum[i]);
}
alert(innerhtml); 问题补充:
innerhtml =innerhtml.replace(/{0}/g,data.arrColnum[i]);
innerhtml =innerhtml.replace(/{1}/g,data.arrColnum[i]);
这么写无问题,均可以得到数据,但是 var str1 里也许有{2},{3},,,{n}
innerhtml =innerhtml.replace(/\{0\}/g,data.arrColnum[i]);
var args = arguments;
var index = 0;
return this.replace(/{\d{1}}/g, function() {
return args[index++];
});
};
通过这种方式可以的,然后再调用str.format(args0, args1 .......);