【问题标题】:OnClientClick OnClickOnClientClick OnClick
【发布时间】:2012-02-28 15:29:30
【问题描述】:

在我的 asp 页面中,我使用小程序截取客户端桌面的屏幕截图,并要求他们通过单击 LinkButton 将其发送到服务器。我使用runApplet() 函数调用我的小程序来捕获屏幕并将字符串值分配给隐藏值。 (图片存储为base64字符串)到这里为止,一切都很完美!但是,SendLinkBut​​ton_Click 似乎没有执行!

这是我的链接按钮。

<asp:LinkButton ID="SendLinkButton" 
          OnClientClick="runApplet(); return false;"
          OnClick="SendLinkButton_Click" 
          Visible="false" 
          CssClass="portal-arrow portal-button"
          runat="server">Send</asp:LinkButton>

这是我的 Javascript 函数

   function runApplet() {

      var msg = document.capture.capture();
      var hiddenControl = '<%= inpHide.ClientID %>';
      document.getElementById(hiddenControl).value = msg;
   }

这就是 SendLinkBut​​ton_Click 内部的内容

protected void SendLinkButton_Click(object sender, EventArgs e)
{
    Server.Transfer("Preview.aspx", true);
}

当我将 javascript 函数放到 LinkBut​​ton 的 OnClientClick 中,并使用另一个 LinkBut​​ton 执行此“SendLinkBut​​ton_Click”。它完美无缺!但我希望他们只需单击一下即可工作!

请帮忙!

【问题讨论】:

  • runApplet() :) 只是 runApplet() 抱歉这个错误

标签: javascript asp.net


【解决方案1】:

您的客户端点击返回 false,因此在此之后不会回发到服务器。

尝试改变:

OnClientClick="runApplet(); return false;"

OnClientClick="runApplet();"

【讨论】:

    【解决方案2】:

    从 OnClientClick 属性中删除 return false。如果从中返回 false,则回发不会执行。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2010-11-11
      • 1970-01-01
      • 2012-10-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-09-14
      相关资源
      最近更新 更多