我有这个JavaScript函数,它允许我只输入阿拉伯字符并丢弃任何其他字符,数字和空格。
每当我输入类似السلام عليكم
的字符串时,它会丢弃该空格并将其更改为السلامعليكم
那么如何让它接受单词之间的空格。
function CheckArabicOnly(field) {
var sNewVal = "";
var sFieldVal = field.value;
for (var i = 0; i < sFieldVal.length; i++) {
var ch = sFieldVal.charAt(i);;
var c = ch.charCodeAt(0);
if (c < 1536 || c > 1791) {
// Discard
} else {
sNewVal += ch;
}
}
field.value = sNewVal;
}
&#13;
<input type="text" name="department_name" value="" size='18' id="txtArabic" onchange="CheckArabicOnly(this);" required>
&#13;
提前致谢
答案 0 :(得分:1)
你可以在你的条件中添加空格字符代码(32
)作为例外:
if ((c < 1536 || c > 1791) && c != 32) {
function CheckArabicOnly(field) {
var sNewVal = "";
var sFieldVal = field.value;
for (var i = 0; i < sFieldVal.length; i++) {
var ch = sFieldVal.charAt(i);;
var c = ch.charCodeAt(0);
if ((c < 1536 || c > 1791) && c != 32) {
// Discard
} else {
sNewVal += ch;
}
}
field.value = sNewVal;
}
<input type="text" name="department_name" value="" size='18' id="txtArabic" onchange="CheckArabicOnly(this);" required>