首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过网格中的on事件将网格视图中的数据库int传递给函数

通过网格中的on事件将网格视图中的数据库int传递给函数
EN

Stack Overflow用户
提问于 2014-02-26 12:28:24
回答 4查看 309关注 0票数 1

基本上,我试图从网格视图中的链接按钮将这个int传递给一个函数。

这是我正在做的自动取款机,但我收到了一个错误。我整个早上都被困在这上面..。

谢谢你的帮助。

这是密码。

代码语言:javascript
运行
复制
<asp:LinkButton runat="server" id="lnkAttachment" 
   ToolTip="<%$ Resources:DocumentsContent, Viewdocument%>" 
   Visible='<%# (int)DataBinder.Eval(Container.DataItem, "DOCUMENT_ID") > 0 %>' 
   OnClientClick="aspnetForm.target ='_blank'; setDownloadDoc();" 
   OnClick='lnkAttachment_Click(<%#(int)DataBinder.Eval(Container.DataItem, "DOCUMENT_ID")%>)'>

  <asp:Image ID="imgSelect0" runat="server"  src="../Images/IconEdit.gif" border="0" alt="<%$ Resources:DocumentsContent, Select%>" />

</asp:LinkButton>
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-02-26 13:07:22

因为它是GridView中的asp控件,所以需要将Command设置为LinkButton。不能使用OnClick属性。

代码语言:javascript
运行
复制
<asp:LinkButton runat="server" id="lnkAttachment" 
   ToolTip="<%$ Resources:DocumentsContent, Viewdocument%>" 
   Visible='<%# (int)DataBinder.Eval(Container.DataItem, "DOCUMENT_ID") > 0 %>' 
   OnClientClick="aspnetForm.target ='_blank'; setDownloadDoc();" 
   CommandName="lnkAttachmentClick"
   CommandValue='<%#(int)DataBinder.Eval(Container.DataItem, "DOCUMENT_ID")%>'>
  <asp:Image ID="imgSelect0" runat="server"  src="../Images/IconEdit.gif" border="0" alt="<%$ Resources:DocumentsContent, Select%>" />
</asp:LinkButton>

后面的代码应该是:

代码语言:javascript
运行
复制
private void GridView1_RowCommand(object sender, System.Web.UI.WebControls.GridViewCommandEventArgs e)
{
    switch (e.CommandName) {
        case "lnkAttachmentClick":
            int document_id = (int)e.CommandArgument;
            // Write your code here
            break;
}

最后,您需要用函数的名称在您的onrowcommand中添加GridView属性。

代码语言:javascript
运行
复制
<asp:GridView ID="GridView1" onrowcommand="GridView1_RowCommand">
</asp:GridView>

您可以查看这里 --一个简单的教程--不知道如何在GridView中使用RowCommand事件。

票数 0
EN

Stack Overflow用户

发布于 2014-02-26 12:50:10

如果您为web开发,您可以使用查询字符串或会话作为替代。

票数 0
EN

Stack Overflow用户

发布于 2014-02-26 12:53:03

Gawd webforms糟透了。

尝试使用CommandArgument属性的LinkButton。看看怎么用它。

实际上,您不应该调用OnClick属性中的方法,即lnkAttachment_Click(stuff)。您应该指定事件处理程序的名称,仅此而已,所以lnkAttachment_Click。

实际上,去他的。只需使用普通链接并设置您自己的所有属性。使用数据某类html5属性来存储整数,并从客户端单击处理程序调用回发。尽量避免使用WebForms控件,因为它只会使好的、现代的web开发更加困难。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22041387

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档