私は基本的に私のページで次の検証を行っています-テキストボックス内の説明は単語'と'を除いて3単語を超えることはできないという単語規則です。私はC#で次のサーバー側の検証を実装しましたが、これは正常に機能しています
if (Desc.Trim().ToString() != "")
{
MatchCollection collection = Regex.Matches(Desc.Replace("and", ""), @"[\S]+");
if (collection.Count > 3)
{
ErrorMsg.Append("Description should contain at most 3 words(excluding 'and').");
ErrorMsg.Append("\\n");
}
}
ただし、Javascriptで同じように動作させるのに問題があります。私は次のことを試しましたが、これまでのところ機能していません。Javascriptの知識が豊富な人がエラーを確認できることを期待しています。ifは、ページで起動するより大きな検証関数の一部であることに注意してください-アラートは、これに入るかどうかを確認するためにありました(そうではありません)-これがブロックされると、ページ上の残りのJSは正常に動作しています。
if (Desc.val().trim() != "")
{
alert('1');
!regexWordRule.test(Desc.val());
alert('2');
if (Desc.val().match(regexWordRule).length > 3)
{
errorText += "Description should contain at most 3 words(excluding 'and').";
}
valid = false;
}
以下は、jsファイルの最上部で定義されている私のregexWordRuleです。
var regexWordRule = /[\S]+/;