【问题标题】:Fire c# codebind from html button从 html 按钮触发 c# 代码绑定
【发布时间】:2016-03-30 20:46:12
【问题描述】:

我正在使用 Jquery DataTables,使用 ajax 和 c# 加载数据。对于其中一个表,我需要触发一个事件,该事件会触发使用 ASP.NET 报告查看器生成报告。

我遇到的问题是绕过按钮来触发页面背后代码中的方法。

使用 ColumnDefs 选项,在 JQuery DataTables 中,我呈现以下创建按钮的内容:

 {
    "targets": 9,
    "data": "download link",
    "render": function(data, type, full, meta) {
        return '<button id="btnViewReport" type="button" class="remove" runat="server" value="' + data.Id + '">View Report</button>';
    }
}

这很好地显示在我的表格中,但现在我需要点击事件来触发报告。我的印象是,添加 runat="server" 会起作用,但可惜没有乐趣。

首先,是否可以使用调用非静态方法的 JQuery 添加按钮?

【问题讨论】:

  • 问题是你不能通过javascript返回一个服务器端控件。我不知道你是否想要这个,但你可以使用 ajax 在你的 Codebehind 上点击一个特定的 WebMethod。
  • 我可以很好地调用 WebMethod,但是您不能在静态方法中使用 asp.net 报告查看器,而 WebMethods 必须是这样。

标签: c# jquery datatables code-behind


【解决方案1】:

问题是“运行服务器”。您需要创建一个 html 按钮(如 &lt;button id="myid" class="myclass" &gt;&lt;/button&gt;),并使用 jQuery 创建一个函数,然后您可以使用 QueryString 或 Ajax 调用来调用您的方法!

【讨论】:

  • 嗨 Federico,这不只是重现了同样的问题吗?如果我使用 c# 从 Ajax 调用 WebMethod,那么 WebMethods 必须是静态的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-09-25
  • 2021-06-04
  • 1970-01-01
  • 2020-02-15
  • 1970-01-01
  • 2021-04-02
相关资源
最近更新 更多