【问题标题】:C# webforms onClick event mixing up with form submitC# webforms onClick 事件与表单提交混合
【发布时间】:2013-11-27 14:08:57
【问题描述】:

我有一个带有发布 URL 和运行服务器的普通表单。 在这个表单中,我有普通的 HTML 字段,还有一些 ASP 控件 这些 ASP 控件用于我制作的验证码,但是当我按下验证码提交按钮时,它会提交整个表单,而不仅仅是 onClick 代码隐藏事件。 我已经尝试使用 LinkBut​​tons 等而不是普通按钮来避免它混淆表单,但它仍然无法正常工作。

有没有办法通过回发和所有内容来制作 onClick 事件,而无需发布其中的表单?

【问题讨论】:

  • POST 表单是 POSTback 的一部分。你期望什么行为?

标签: c# asp.net forms code-behind


【解决方案1】:

这就是 ASP.NET 的工作原理。代码隐藏事件处理程序在服务器上执行,因此需要一个完整的提交-回发-重新渲染循环来处理它。

您可以使用 UpdateControl 进行 AJAX 样式的部分页面更新。请注意,它仍然会执行整个提交-回发-重新渲染周期,但它只会更新页面的一部分。

【讨论】:

  • 那么在网络表单中真的不可能有一个普通的表单吗?
  • 您可以定义没有 runat="server" 属性的表单,并且您可以执行任何类型的 JavaScript 魔术来禁止回发。但是要调用代码隐藏的 C# 代码,您必须执行完整回发、部分回发,或者作为另一种选择,您可以在 ASP.NET 应用程序中从 JS 调用 Web 服务。
猜你喜欢
  • 2016-02-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2010-09-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多