我需要確保輸入值包含至少一個點,所以我使用了以下內容:反斜槓中的RegularExpressionValidator
<asp:RegularExpressionValidator runat="server"
ControlToValidate="MyInput" Text="*"
ErrorMessage="must contain at least one dot"
ValidationExpression="\.+" />
這是行不通的。通過檢查頁面源,我可以看到ASP.NET轉義反斜槓字符,所以在java腳本中它看起來像"\\.+"
。爲什麼它這樣做,我如何防止RegularExpressionValidator逃脫它?
你確定'RegularExpressionValidator'隱式搜索字符串的開始和結束嗎? AFAIK它不*,因此'\ .'應該是一個足夠的模式。 – 2010-03-16 09:59:30
我剛測試過它。它的確如此。至少我在我的網站上使用這個。 – Jens 2010-03-16 10:00:57
謝謝!這意味着默認的JS regexp選項與.NET Regex類不同,因爲後者工作正常。這很奇怪 - 如果我們禁用了JS,RegularExpressionValidator應該使用服務器端檢查(即Regex類),不應該嗎? – UserControl 2010-03-16 10:02:43