0

シンプルな .jsp を設定して JavaScript の正規表現をテストし、変更を加えるたびにテスト サーバーをクリーンアップ/ビルド/再公開する必要がないようにしています。既存のコードは、スペイン語の文字の認識を追加するために取り組んでいたプロジェクトから取得したものですが、このコードはそのままでは不一致をまったくキャッチしていないようです。

<html>
<head>
    <script language="JavaScript">
        function isValidTarget(target) {
            if (regexTarget.target.search(/^[a-zA-Z\#\@\!\&\.\*\-:;<>"',\?0-9 ]+$/) == -1) {
                alert("Your input contains one or more invalid characters.");
            }
        }
    </script>
</head>
<body>
    <form name="regexTarget" method="post" onSubmit="return isValidTarget(this)">
        Target: <input type="text" name="target"/>
        <input type="submit" value="Submit" />
    </form>
</body>
</html>
4

3 に答える 3

0

値ではなく DOM ノードを検索しようとしています。これを試して:

regexTarget.target.value.search(...)
于 2012-07-23T19:57:55.050 に答える
0

パラメータtargetに名前を付けていますが、使用することはありません。パラメータを削除するか、使用してください (例: if( target.target.search...)

于 2012-07-23T19:51:48.577 に答える
0
if (target.target.value.search(/^[a-zA-Z\#\@\!\&\.\*\-:;<>"',\?0-9 ]+$/) == -1) 
于 2012-07-23T20:06:01.807 に答える