这是我的代码:
$(".count").text(parseInt($(".count").text())+1);
此代码仅适用于英文数字而不使用阿拉伯数字的问题。
1 in Arabic = 1
如何解决此问题,使此代码适用于阿拉伯语和英语?
答案 0 :(得分:1)
使用普通数字然后转换为阿拉伯语
var arNum = '۰۱۲۳۴۵۶۷۸۹', val = 0;
$(function() {
val = arNum.indexOf($(".count").text()); // works only from 0 - 9
$("#inc").on("click",function() {
val++;
if (val > 9) {
val=0;
}
$(".count").text(arNum.charAt(val));
});
})

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js"></script>
<span class="count">۰</span><button type="button" id="inc">Increment</button>
&#13;
答案 1 :(得分:0)
我不认为parseInt支持UTF-8字符串。它只有两个参数,一个是要解析的字符串数字,另一个是基数。 parseInt(string,number)。
检查isNaN是否返回true,然后parseInt无法正常工作。
答案 2 :(得分:0)
我认为你需要在添加后进行字符串替换。据我所知,JavaScript没有内置支持将数字转换为例如阿拉伯语。
例如,here是类似问题的一个很好的答案,其中包含所述替换的功能。
基本上,您为阿拉伯数字创建一个查找表,然后在增加的数字(作为字符串)上运行String.replace
。