IE9: сообщение проверки не очищается - PullRequest
1 голос
/ 27 сентября 2011

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

<UC:UploadControl runat="server" ID="file_logo" IsRequired="false" ReqValidationGroup="jpg" onkeypress="Javascript:CheckNumeric(event);"   RequiredFieldMessage="Please upload Image file" CheckFileType="true" Width="870" Height="100" CheckDimension="false" RegexpFieldMessage="File type is invalid." FileFormats="gif,GIF,jpg,JPG,jpeg,JPEG" RegDisplay="true"  />

Я использую другую ссылку для очистки сообщения об ошибке. Код

<a href='javascript:chkFileTypes("ctl00_mainContentPlaceHolder_file_logo_uploadfiles");clearInvalidLabel("ctl00_mainContentPlaceHolder_file_logo_uploadfiles")' >Clear File</a><br />

Моя функция Javascript, используемая для очистки сообщения проверки,

function clearInvalidLabel(control) {
if (control == "ctl00_mainContentPlaceHolder_file_logo_uploadfiles") $("span[id$='file_logo_regexpType']").hide();
if (control == "ctl00_mainContentPlaceHolder_PopUp_logo_uploadfiles") $("span[id$='PopUp_logo_regexpType']").hide();}

Теперь, если я снова выбираю неподходящий файл с помощью UploadControl, сообщение об ошибке не отображается (только в IE9). Он отлично работает в других браузерах. Пожалуйста, помогите мне.

Спасибо.

1 Ответ

2 голосов
/ 27 сентября 2011

Жесткие коды легко сломать.Попробуйте использовать ClientID для доступа к элементу управления в JavaScript.

<a href='javascript:chkFileTypes("<%=UploadFilesControl.ClientID%>");clearInvalidLabel("<%=UploadFilesControl.ClientID%>")'>Clear File</a> 

Я бы также использовал ClientID для получения меток проверки:

$("#<%=regexpType.ClientID%>").hide();    
...