【问题标题】:Button is not triggering in ASP.NET Webforms按钮未在 ASP.NET Webforms 中触发
【发布时间】:2020-12-25 18:10:10
【问题描述】:

我正在尝试修复我遇到的一个错误,即我的网络表单中没有触发按钮。

aspx文件和vb文件中的按钮代码如下:

<asp:Button ID="btnUserEditSave" runat="server" Text="Save User" ClientIDMode="Static" CssClass="button saveButton xbtnWaitEvent" width="100px" ToolTip="Save changes" />
Protected Sub btnUserEditSave_Click(ByVal sender As Object, ByVal e As EventArgs) Handles btnUserEditSave.Click

我没有包含按钮本身的代码,因为它无关紧要,因为该错误与按钮未触发有关,而不是与按钮本身的代码中断有关。我已经测试了按钮的工作原理以及导致它不触发的原因,这是我目前掌握的信息:

当第一次通过此按钮保存用户详细信息时,按钮触发并且所有代码按预期运行。该页面已重新加载,显示新的用户详细信息。

但是在这样做之后,按钮将无法正确触发,并且在单击时会导致页面变为空白。尽管事实上没有在源触发器中编写页面加载方法,也没有我尝试通过使用警报进行测试的 Javascript(请参见下面的代码):

if(document.getElementById('btnUserEditSave').clicked == true)
{
    alert("button was clicked");
}

值得注意的是,页面上的其他按钮也不再以非常相似的方式工作。按钮后面的代码不会触发,也不会触发页面加载方法。但是仍然显示一个空白页面。

如果上下文需要任何进一步的代码,那么我将尽我所能提供,任何关于可能导致此错误的原因的帮助将不胜感激,因为我对想法很感兴趣。谢谢。

【问题讨论】:

  • 我认为 javascript 实际上不会做任何事情。您是否检查过控制台是否有错误?对于这样的错误,我总是首先删除控件(或注释掉)并重新添加它。听起来我们看不到代码中可能存在问题,因为它至少可以工作一次。
  • @wazz 删除并重新添加控件是什么意思?您是指按钮本身背后的代码还是其他什么?
  • 是的,删除 .aspx 页面上的按钮和后面的代码,然后重新添加按钮以检查所有内容是否正确连接。 (注释掉你想保存的东西,而不是删除。)值得一试,但是,就像我说的,听起来代码中可能存在我们看不到的问题,因为它至少可以工作一次。
  • @wazz 我尝试了您的建议,但无济于事。当您说这可能是代码之外的问题时,您的意思是什么?

标签: javascript asp.net vb.net webforms


【解决方案1】:

您需要在 html 标记中添加 onclick 事件,这就是您连接它的方式。

 <asp:Button ID="btnUserEditSave" onclick="btnUserEditSave_Click" runat="server" Text="Save User" ClientIDMode="Static" CssClass="button saveButton xbtnWaitEvent" width="100px" ToolTip="Save changes" />

【讨论】:

  • 添加 onclick 并不能解决问题。我不认为问题出在这个问题上,考虑到按钮本身确实有效,但只是第一次保存细节。
  • 服务器端的点击事件是否被触发?向我们展示该事件代码。此外,当从标记添加 onlick 时,让智能感知帮助您,例如,当您键入“on..”时,它应该列出您可以使用的事件,从那里选择 onclick。
  • 当我在控制台中调试它时,我得到“无法识别的 Content-Security-Policy 指令‘默认’。”返回。
  • 可以分享整个页面的代码吗?该错误与点击代码无关。
  • 可以,但是代码比较长,有什么特别想看的吗?
猜你喜欢
  • 1970-01-01
  • 2023-03-26
  • 2013-07-02
  • 2016-08-02
  • 2013-08-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多