作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
这个类在我的页面上有很多 span
<span class="price">AED 2129</span>
<span class="price">AED 4129</span>
我想使用 jQuery 查找所有跨度,然后将 AED 替换为阿拉伯语单词 Dirham,并将数字替换为阿拉伯数字。
这是我已经尝试了几个小时的当前代码。
jQuery('span.price').val(function(i,val) {
// text
var en_currency = "AED";
var ar_currency = "درهم";
// array
var f = ['0','1','2','3','4','5','6','7','8','9', en_currency];
var r = ['٠','١','٢','٣','٤','٥','٦','٧','٨','٩', ar_currency];
var valArray = val.split(' ');
jQuery.each(valArray, function(i,v){
var inF = jQuery.inArray(v, f);
if(inF !== -1){
valArray[i] = v.replace(f[inF], r[inF]);
}
});
return valArray.join(' ');
});
最佳答案
您需要使用 text()
不是 val()
, val()
在 span
text()
的情况下用于获取或设置表单字段 是必需的。然后您可以使用 replace()
中的回调来简化您的代码
// text
var en_currency = "AED";
var ar_currency = "درهم";
// array
var f = ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'];
var r = ['٠', '١', '٢', '٣', '٤', '٥', '٦', '٧', '٨', '٩'];
jQuery('span.price').text(function(i, val) {
return val.replace(en_currency, ar_currency).replace(/\d/g, function(m) {
return r[f.indexOf(m)];
})
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<span class="price"> AED 2312 </span>
<span class="price"> AED 1023 </span>
关于javascript - jQuery用阿拉伯数字数组替换英文数字数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32987931/
你有一个这样输出的文件: 1 2 哪些输出: 1 2 3 现在如果我想要如下输出: ? ? ? 好吧,我希望我可以输出阿拉伯语/波斯语版本的 1,2,3 而不是“?”。如何使用 HTML
关闭。此题需要details or clarity 。目前不接受答案。 想要改进这个问题吗?通过 editing this post 添加详细信息并澄清问题. 已关闭 9 年前。 Improve th
我是一名优秀的程序员,十分优秀!