【问题标题】:How can I link a html button to a codebehind method in asp.net?如何将 html 按钮链接到 asp.net 中的代码隐藏方法?
【发布时间】:2011-08-06 09:07:12
【问题描述】:

我有一个 JQueryTemplate 呈现一些文本框和相应的提交按钮。如何处理按钮的单击方法?还有一种方法可以识别按下了哪个按钮?每个模板文本框/按钮对都有一个与之关联的 ID。

理想情况下,我只想拥有一个 templateButton_click() 方法,并能够从中提取文本框的 ID 和值。有人能指出我正确的方向吗?

【问题讨论】:

  • 您是要回发到服务器还是进行 AJAX 调用,或者在单击提交按钮时执行一些客户端脚本?

标签: javascript asp.net html


【解决方案1】:

__doPostBack 客户端可能是您所追求的:How to use __doPostBack()

【讨论】:

    【解决方案2】:

    要在客户端事件上调用服务器端方法,您需要执行以下操作:

    1- 创建在客户端事件发生时执行您想做的任何事情的服务器端方法:

    templateButton_click(string textBoxID)
    

    2- 实现带有一个字符串参数的 RaisePostBackEvent 事件处理程序(这将是相关文本框的 ID)。在其中调用您定义的方法:

    public void RaisePostBackEvent(StringeventArgument) : System.Web.UI.IPostBackEventHandler.RaisePostBackEvent        
    {
        templateButton_click(eventArgument)
    }
    

    3- 编写脚本以触发回发操作:

    function TriggerPostBack(control, arg){    
        __doPostBack(control, arg);
    }
    

    4- 在每个按钮的点击事件上调用 PostBack 触发函数,并指定 realted TextBox ID 作为参数:

    <button .... onclick="TriggerPostBack('ButtonID', 'RealatedTextBoxID')" .. />
    

    【讨论】:

    • 太棒了,这看起来很酷,感谢您的全面回答,会试一试!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-07-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多