从 asp.net 中的文本框中获取希伯来语字符

本文关键字:获取 希伯来语 字符 asp net 文本 | 更新日期: 2023-09-27 18:33:35

所以,

我的网站上有一个文本框,它是用 c# asp.net 4 编写的。

<td>
    <asp:TextBox ID="UserName" runat="server" CssClass="textEntry" Width="265px" 
     placeholder="שם משתמש" ontextchanged="UserName_TextChanged"></asp:TextBox>
</td>

问题是,当有人试图输入希伯来语时,它会让他这样做。

我怎么知道他试图写的输入是希伯来语,不要让他?就像用javascript给他一个警告,或者只是不要让他。

有人可以帮我一把吗?

谢谢!

从 asp.net 中的文本框中获取希伯来语字符

我认为您需要这种类型的解决方案 文本框只写字符串字符

如何使用 JavaScript 在文本框中只允许数字(或字母(。例如

 function ynOnly(evt) {
        evt = (evt) ? evt : event;
        var charCode = (evt.charCode) ? evt.charCode : ((evt.keyCode) ? evt.keyCode :
            ((evt.which) ? evt.which : 0));
        if (charCode > 31 && charCode != 78 && charCode != 89 &&
            charCode != 110 && charCode != 121) {
            alert("Enter "Y" or "N" only.");
            return false;
        }
        return true;
   }

在这种情况下,您可以通过将文本框限制为单个字符来添加更多针对错误输入的保护:

 Signature Present: <input type="text" name="signature" size="2" maxlength="1"
  onkeypress="return ynOnly(event)" /> (Y/N)

您可以根据需要更改此代码。

我相信

这就是你要找的:

function UserName_TextChanged(which) {
    if (/[^a-zA-Z]/gi.test(which.value)) {
        alert ("Only alpha characters are valid in this field"); // no spaces, full stops or anything but A-Z
        which.value = "";
        which.focus();
        return false;
    }
}

我的机器上没有希伯来语,但我相信它也会阻止这些字符

你像这样调用此方法:

ontextchanged="UserName_TextChanged(this)"

代码说明:

function UserName_TextChanged(which) {

"哪个"变量是要验证的控件。请注意,当你调用函数时,你会传递"this",它松散地翻译为"this对象">

if (/[^a-zA-Z]/gi.test(which.value)) {

这会根据传入的控件的值测试正则表达式模式

alert ("Only alpha characters are valid in this field");

如果模式匹配(意味着存在 a-z 以外的字符(,则会提醒用户他们输入了无效字符

which.value = "";

在这里,您将擦除控件的文本。您可能不想这样做,具体取决于您的需求。

which.focus();

在这里,您将光标放回正在验证的控件中。

return false;

这用于在提交表单之前调用此验证的情况。通过返回 false,您可以取消表单的提交。

关于这个问题有很多 Stackoverflow 的答案。使用搜索。"希伯来语输入验证"。