ValidationSummary не отображается - с RegularExpressionValidator - PullRequest
0 голосов
/ 17 сентября 2010

ниже приведен код, и когда я выбираю неправильный тип файла, я получаю мгновенное красное «*», но я не вижу сводку проверки, и появляется кнопка «загрузить», и когда я нажимаю на нее, я получаю сводку проверкисообщение об ошибке.

у меня такой вопрос: почему при выборе неправильного типа файла не отображается сводка проверки?

<asp:ValidationSummary ForeColor="DarkRed" 
 ID="ValidationSummary1" runat="server" ShowMessageBox="False"
 HeaderText="To save this page, the following required fields must be completed:" ShowSummary="true" />

  <asp:RegularExpressionValidator ID="RegularExpressionValidator2" EnableClientScript="true" runat="server" ControlToValidate="fUpload"
ValidationExpression="^(([a-zA-Z]:)|(\\{2}\w+)\$?)(\\(\w[\w].*))(.rtf|.RTF|.Rtf|.xls|.XLS|.Xls)$" Text="*"
ErrorMessage="Invalid file type" SetFocusOnError="true" Display="Dynamic">/></asp:RegularExpressionValidator> 

Ответы [ 2 ]

4 голосов
/ 17 сентября 2010

Поскольку ваш RegularExpressionValidator имеет EnableClientScript="true", это вызовет проверку элемента управления на стороне клиента.

Элемент управления ValidationSummary, даже если он также может быть установлен на EnableClientScript="true", должен проверять все элементы управления со своей собственной группой, поэтому не будет отображать сообщение об ошибке таким же образом. Это сделано специально, поэтому будет работать только после отправки формы.

Чтобы не отображать '*' мгновенно, вы можете установить элемент управления на Display="None" или изменить на EnableClientScript="false"

2 голосов
/ 17 сентября 2010

ValidationSummary отображается при попытке отправить форму (нажмите кнопку отправки), а не точно после того, как вы заполните поля формы.

Если у вас есть Display="Dynamic" в вашем валидаторе, как и выесть, единственное, что вы сразу получите - это сообщение в свойстве Text вашего валидатора.Таким образом, если вы хотите мгновенно получить сообщение об ошибке, вам придется изменить Text="*" на Text="Invalid file type".

...