1

我正在使用此脚本来禁止用户| < > / \ : * ? \ " ^在 aspx c# 网站上的表单上插入输入框。但是,这只适用于 IE 或 Chrome。我想知道是否有人可以提供有关为什么它不能在 Firefox 中工作的见解?

<script type="text/jscript">

    $('input').bind('keypress', function(event) {
        var regex = new RegExp("[|<>/\\\\:*?\"^]");
        var key = String.fromCharCode(!event.charCode ? event.which : event.charCode);
        if (!regex.test(key) == false) {
            event.preventDefault();
            alert("Seach cannot contain the following characters: \n \\ / : * ? \" < > |");
            return false;
        }
    });
</script>
4

2 回答 2

2

它不起作用,因为您错误地声明了它。

改变这个

<script type="text/jscript">

到正确的:

<script type="text/javascript">

或者您可以完全省略类型,因为 JavaScript 是默认值:

<script>
于 2012-10-15T12:23:49.773 回答
1

除了scunliffe发布的内容之外,这可能不是您想要的:

if (!regex.test(key) == false)
  --^--                 --^--

你否定了两次。也许你想要这个:

if (!regex.test(key))

这更有意义。test是虚假的,因此无需与布尔值进行比较。

于 2012-10-15T12:25:37.177 回答