如何将身体中的数字替换为波斯数字? [英] how to replace numbers in body to persian numbers?
本文介绍了如何将身体中的数字替换为波斯数字?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想将html内容中的每个数字转换为波斯数字,而不会影响页面元素。
例如:$ b
< div style ='color:#c2c2c2'>
文字编号1
< span>文字编号2< / span>
< div>
文字编号3
文字编号4
< a href ='#page2'>文字编号5< / a>
< / div>
< / div>
转换为:
< div style ='color:#c2c2c2'>
文字编号1
< span>文字编号2< / span>
< div>
文字编号3
文字编号4
< a href ='#page2'>文字编号5< / a>
< / div>
< / div>
persian = array('0','1','2','3','4','5','6','7','8','9 );
english = array('0','1','2','3','4','5','6','7','8','9');
谢谢。
解决方案
你可以使用这个方法:( http://jsfiddle.net/A4NfG/1/
$ b
persian = {0:'0',1:'1',2:'2',3 : '3',4: '4',5: '5',6: '6',7: '7',8: '8',9: '9'};
函数遍历(el){
if(el.nodeType == 3){
var list = el.data.match(/ [0-9] / g);
if(list!= null&& list.length!= 0){
for(var i = 0; i< list.length; i ++)
el.data = el .data.replace(列表[I],波斯[列表[I]]);
}
}
for(var i = 0; i< el.childNodes.length; i ++){
traverse(el.childNodes [i]);
}
}
I want to convert every numbers on html content to Persian numbers without effect on page element.
for example:
<div style='color: #c2c2c2'>
text number 1
<span>text number 2</span>
<div>
text number 3
<b>text number 4</b>
<a href='#page2'>text number 5</a>
</div>
</div>
convert to :
<div style='color: #c2c2c2'>
text number ۱
<span>text number ۲</span>
<div>
text number ۳
<b>text number ۴</b>
<a href='#page2'>text number ۵</a>
</div>
</div>
persian = array('۰', '۱', '۲', '۳', '۴', '۵', '۶', '۷', '۸', '۹');
english = array('0', '1', '2', '3', '4', '5', '6', '7', '8', '9');
Thanks.
解决方案
You can use this method: (http://jsfiddle.net/A4NfG/1/)
persian={0:'۰',1:'۱',2:'۲',3:'۳',4:'۴',5:'۵',6:'۶',7:'۷',8:'۸',9:'۹'};
function traverse(el){
if(el.nodeType==3){
var list=el.data.match(/[0-9]/g);
if(list!=null && list.length!=0){
for(var i=0;i<list.length;i++)
el.data=el.data.replace(list[i],persian[list[i]]);
}
}
for(var i=0;i<el.childNodes.length;i++){
traverse(el.childNodes[i]);
}
}
这篇关于如何将身体中的数字替换为波斯数字?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文