我有一个使用Telerik控件的网站。登录按钮链接不会触发与其关联的事件。这个问题在我的本地开发环境中不会发生。它仅在我部署到IIS服务器时发生。
我在IE和Chrome中运行它,它的行为方式相同。我有一个JavaScript弹出窗口,当您刷新需要单击以进入登录按钮的页面时会触发该弹出窗口。这是一个网站警告说"通过使用这个网站,你同意......哇哇哇哇哇哇哇哇哇哇哇它是唯一的JavaScript,当您单击“确认”时,它就会消失,您可以输入凭据并单击“登录”。
单击“登录”时,将触发JavaScipt popoup,您必须再次点击“确认”才能登录。
起初,我注意到我得到了一个" sys未定义"页面上的脚本错误。我查了一下,似乎有关于Telerik的web.config中可能遗漏了一些内容。我更新了IIS服务器的web.config,问题似乎已经恢复了。
除了,它回来了,我似乎无法弄清楚该怎么做。我希望提供一些故障排除技巧或其他帮助。我不确定Telerik控制器造成了多少甚至是它们。无论如何,实际上没有触发的按钮只是一个普通的ASP .NET按钮。
这里有一些代码:
首先,page指令上的AutoEventWireUp设置为True:
<%@ Page Language="C#" AutoEventWireup="True" CodeBehind="Default.aspx.cs" Inherits="xxx.Default" %>
按钮本身的ASPX HTML在一个表格中(我知道桌子是一个很糟糕的地方,但我会责怪写这个的人。)它是登录按钮:
<td>
<asp:Button ID="login" runat="server" Text="Login" OnClick="Login_Click" SkinID="Button" ForeColor="White" Width="100px" />
</td>
代码隐藏做了一些事情,但这里的要点是它根本就不会发射。而是页面刷新自己:
protected void Login_Click(object sender, EventArgs e)
{
if (Helper.DoWriteToLogFile())
{
Helper.WriteToCLogFile("Default.aspx -- Login_Click() clicked....");
}
:
:
是的,我已启用日志记录,并且永远不会写入日志文件。
对于实际的Page_Load事件,我会记录事件,并且日志记录成功发生:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
if (Helper.DoWriteToLogFile())
{
Helper.WriteToLogFile("Default.aspx -- DoWriteToLogFile is enabled.");
}
:
:
因此,我知道日志记录有效。我知道页面加载有效,但我似乎无法启动登录按钮。
我只是猜测可能因为以前发生的事情而涉及Telerik。
使用IE浏览器,我已经使用开发人员工具(F12)启用了脚本调试,但我没有看到任何直接问题。我确实看到了这个:
DOM7011: The code on this page disabled back and forward caching. For more information, see: http://go.microsoft.com/fwlink/?LinkID=291337
File: mysite.com
HTML1300: Navigation occurred.
File: mysite.com
DOM7011: The code on this page disabled back and forward caching. For more information, see: http://go.microsoft.com/fwlink/?LinkID=291337
File: mysite.comm
这些都是警告,而不是错误,我似乎无法在脚本调试器中显示任何问题。
我很难过。我对这方面的任何帮助表示感谢。 web.config的Handlers和HttpHandlers部分在我的本地开发人员和IIS服务器之间进行匹配,因此我不知道我是否需要在那里做任何事情。以下是部分:
<httpHandlers>
<add path="ChartImage.axd" type="Telerik.Web.UI.ChartHttpHandler" verb="*" validate="false" />
<add path="Telerik.Web.UI.SpellCheckHandler.axd" type="Telerik.Web.UI.SpellCheckHandler" verb="*" validate="false" />
<add path="Telerik.Web.UI.DialogHandler.aspx" type="Telerik.Web.UI.DialogHandler" verb="*" validate="false" />
<add path="Telerik.RadUploadProgressHandler.ashx" type="Telerik.Web.UI.RadUploadProgressHandler" verb="*" validate="false" />
<add path="Telerik.Web.UI.WebResource.axd" type="Telerik.Web.UI.WebResource" verb="*" validate="false" />
<add type="Telerik.ReportViewer.WebForms.HttpHandler, Telerik.ReportViewer.WebForms, Version=5.1.11.713, Culture=neutral, PublicKeyToken=a9d7983dfcc261be" path="Telerik.ReportViewer.axd" verb="*" validate="true" />
</httpHandlers>
<httpModules>
<add name="RadUploadModule" type="Telerik.Web.UI.RadUploadHttpModule" />
<add name="RadCompression" type="Telerik.Web.UI.RadCompression" />
</httpModules>
<trace writeToDiagnosticsTrace="false" enabled="false" pageOutput="false" localOnly="true" requestLimit="400" />
<httpCookies httpOnlyCookies="true" requireSSL="false" />
<authorization>
<deny users="?" />
<allow users="*" />
</authorization>
</system.web>
<system.webServer>
<validation validateIntegratedModeConfiguration="false" />
<modules runAllManagedModulesForAllRequests="true">
<remove name="RadUploadModule" />
<remove name="RadCompression" />
<add name="RadUploadModule" type="Telerik.Web.UI.RadUploadHttpModule" preCondition="integratedMode" />
<add name="RadCompression" type="Telerik.Web.UI.RadCompression" preCondition="integratedMode" />
<add name="Glimpse" type="Glimpse.Core.Module,Glimpse.Core" preCondition="integratedMode" />
</modules>
<handlers>
<remove name="ChartImage_axd" />
<remove name="Telerik_Web_UI_SpellCheckHandler_axd" />
<remove name="Telerik_Web_UI_DialogHandler_aspx" />
<remove name="Telerik_RadUploadProgressHandler_ashx" />
<remove name="Telerik_Web_UI_WebResource_axd" />
<add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add name="ChartImage_axd" path="ChartImage.axd" type="Telerik.Web.UI.ChartHttpHandler" verb="*" preCondition="integratedMode" />
<add name="Telerik_Web_UI_SpellCheckHandler_axd" path="Telerik.Web.UI.SpellCheckHandler.axd" type="Telerik.Web.UI.SpellCheckHandler" verb="*" preCondition="integratedMode" />
<add name="Telerik_Web_UI_DialogHandler_aspx" path="Telerik.Web.UI.DialogHandler.aspx" type="Telerik.Web.UI.DialogHandler" verb="*" preCondition="integratedMode" />
<add name="Telerik_RadUploadProgressHandler_ashx" path="Telerik.RadUploadProgressHandler.ashx" type="Telerik.Web.UI.RadUploadProgressHandler" verb="*" preCondition="integratedMode" />
<add name="Telerik_Web_UI_WebResource_axd" path="Telerik.Web.UI.WebResource.axd" type="Telerik.Web.UI.WebResource" verb="*" preCondition="integratedMode" />
<add name="Telerik.ReportViewer.axd_*" type="Telerik.ReportViewer.WebForms.HttpHandler, Telerik.ReportViewer.WebForms, Version=5.1.11.713, Culture=neutral, PublicKeyToken=a9d7983dfcc261be" path="Telerik.ReportViewer.axd" verb="*" preCondition="integratedMode" />
<add name="Glimpse" path="glimpse.axd" verb="GET,POST" type="Glimpse.Core.Handler,Glimpse.Core" preCondition="integratedMode" />
</handlers>
如果您认为我可以提供任何其他信息,请告诉我。感谢。
答案 0 :(得分:1)
我解决了这个问题。我修改了web.config并进行了其他更改。基本上,在<compilation>
部分下方有一个<assemblies>
部分。我整体删除了<assemblies>
。
这解决了这个问题。