Ошибка предоставления ASP.NET: ваш браузер не поддерживает сценарии или настроен так, чтобы не разрешать сценарии

Я пытаюсь отобразить отчет RDL, используя элемент управления ReportViewer. Мне уже удалось загрузить свой отчет с помощью SO. Но теперь я столкнулся с другой проблемой.

Отчет загружается, потому что он показывает все текстовые поля параметров отчета. Но когда я заполняю их, результаты отчета не отображаются. Точно такие же параметры делают работают, когда я просматриваю отчет в своем веб-браузере через URL-адрес ReportServer.

Я думаю, проблема в том, что она также отображает эту ошибку на моей странице ASP.NET (где у меня есть элемент управления ReportViewer).

Ваш браузер не поддерживает сценарии или был настроен на запрет использования сценариев.

Что странно, потому что любой другой сайт с поддержкой javascript отлично работает для меня. Я считаю, что эта ошибка возникает, потому что у меня есть ScriptManager на моей странице ASP.NET.

Я понятия не имею, как решить эту проблему. Кто-нибудь знает, как решить эту проблему?


ПРИМЕЧАНИЕ:

Ошибка не появляется, когда я удаляю элемент управления ReportViewer. Я также могу выполнить alert в теге <script>. Так что JS вроде работает.


Это то, что у меня есть на моей странице:

<asp:Content ID="BodyContent" runat="server" ContentPlaceHolderID="MainContent">
    <h2>Report</h2
    <rsweb:ReportViewer ID="ReportViewer1" runat="server" Font-Names="Verdana" 
        Font-Size="8pt" Height="742px" InteractiveDeviceInfos="(Collection)" 
        ProcessingMode="Remote" WaitMessageFont-Names="Verdana" 
        WaitMessageFont-Size="14pt" Width="907px">
        <ServerReport ReportPath="http://server.com/Product/Dashboards/Product_tool.rdl" 
            ReportServerUrl="http://server.com/ReportServer" />
    </rsweb:ReportViewer>

    <asp:ScriptManager ID="ScriptManager1" runat="server">
    </asp:ScriptManager>
</asp:Content>

И в моем PageLoad:

ReportViewer1.ServerReport.ReportServerCredentials = new ReportCredentials("user", "pass");
ReportViewer1.Visible = true;
ReportViewer1.ServerReport.Refresh();

person w00    schedule 16.01.2013    source источник
comment
Можете ли вы опубликовать свою страницу, которая имеет управление менеджером скриптов (или хотя бы его часть)?   -  person Brendan Hannemann    schedule 16.01.2013
comment
@unicron Я добавил немного кода, это то, что вы хотите увидеть?   -  person w00    schedule 16.01.2013
comment
да. Вы пытались развернуть свой проект на другом сервере, кроме локального?   -  person Brendan Hannemann    schedule 16.01.2013
comment
@unicron Пока нет, попробую в следующий понедельник, так как ближайшие дни меня не будет в городе.   -  person w00    schedule 16.01.2013


Ответы (1)


Наиболее вероятной причиной этого является то, что сайт находится на ненадежном адресе. Internet Explorer открывает сайты в зонах и может поместить ваш адрес разработки в ненадежную зону, которая по умолчанию отключает сценарии. Обычно где-то можно увидеть значок, который указывает на это и позволяет добавить адрес в доверенную зону.

Найдите значок глаза или значок предупреждения — в зависимости от используемой версии Internet Explorer.

Вы также можете запустить другой браузер и посмотреть, отличается ли он.

person Fenton    schedule 16.01.2013
comment
Только что проверил его с Safari, тот же результат. Есть идеи? - person w00; 16.01.2013
comment
Я предполагаю, что другая возможность заключается в том, что JavaScript включен, но есть ошибка, мешающая его выполнению? Что-нибудь в консоли браузера? - person Fenton; 16.01.2013
comment
Ошибок вообще нет. Только что попробовал с Firefox и Firebug. Я запускаю его в Windows Server 2008 R2. Может ли это быть настройка безопасности, которая не разрешает Javascript в localhost? - person w00; 16.01.2013
comment
На самом деле, я не думаю, что скрипты заблокированы на localhost. Поскольку alert(), кажется, отлично работает в тегах <script> ... - person w00; 16.01.2013
comment
Это странно, потому что, насколько я вижу, сообщение, которое вы видите, находится в теге <noscript>, поэтому единственное, что должно вызывать это отображение, - это отключенный (или не поддерживаемый) JavaScript. - person Fenton; 16.01.2013
comment
Точно мои мысли. Также, когда я заключаю ReportViewer и ScriptManager в <div>, я не вижу ошибки. Я не уверен, означает ли это, что ошибка действительно исчезла. Потому что в отчете по-прежнему не отображаются данные, когда я нажимаю кнопку «Просмотреть результаты». Однако он всегда показывает всплывающее окно Ajax loading, основанное на JS... Я так ничего не знаю об этом :( - person w00; 16.01.2013