我想验证文本 html 以使其仅接受阿拉伯字符。如何使用 java 脚本进行此操作。
问问题
4876 次
3 回答
1
尝试这样的事情:
function arabicOnly(e){
var unicode=e.charCode? e.charCode : e.keyCode
if (unicode!=8){ //if the key isn't the backspace key (which we should allow)
if (( unicode<48 || unicode>57) && (unicode < 0x0600 || unicode > 0x06FF)) //if not a number or arabic
return false //disable key press
}
}
于 2012-04-28T15:17:02.483 回答
1
- 由于 JavaScript 缺少与某些脚本匹配的内置类,因此您需要查阅Unicode 代码图表并选择所需的范围。我在阿拉伯语方面不是那么专业,所以我猜你至少需要阿拉伯语 (600-6ff)、阿拉伯语补充 (750-77f) 和阿拉伯语扩展 A (8a0-8ff)。
- 构造一个匹配仅由这些字符组成的字符串的正则表达式:
/^[\u0600-\u06FF\u0750-\u077F\u08A0-\u08FF]$/
- 如果您有一个或使用许多 JavaScript 表单验证库中的任何一个(只需在任何引擎中搜索这些词以快速找到一个),请在您自己的验证函数中使用它。
此外,如果您使用的库允许否定检查,您可以反转范围以避免扫描整个字符串并在第一个错误字符上保释:/[^\u0600-\u06FF\u0750-\u077F\u08A0-\u08FF]/
.
于 2012-04-28T15:23:20.573 回答
0
您需要使用正则表达式。
阅读:
http ://www.javascriptkit.com/javatutors/redev3.shtml
于 2012-04-28T15:14:49.470 回答