绑定两个属性[“onclick”]

时间:2013-11-25 16:11:54

标签: c# asp.net gridview selectedindexchanged rowdatabound

当我点击第一个单元格时,我有一个GridView,我想绑定两个事件(?)。

两个事件/ onclick都在RowDataBound中。

第一个给我selectedindex所以我可以使用SelectedIndexChanged并在Session中保存行。

     e.Row.Cells[1].Attributes["onClick"] = ClientScript.GetPostBackClientHyperlink(this.gvProd, "Select$" + e.Row.RowIndex);

第二个人将我发送到另一个页面,我将在会话中显示保存的内容。

   e.Row.Cells[1].Attributes["onClick"] = "location.href='products.aspx?id=" + DataBinder.Eval(e.Row.DataItem, "Namn") + "'";

所以我想要的是通过一个onClick来解雇。他们都是单手工作,但这对我没有帮助。我是新手,谷歌这次无法帮助我:(

和平了!

2 个答案:

答案 0 :(得分:1)

为什么不在url查询字符串中发送值。快速解决方案将使用不可见的控件和设置会话。

    <asp:TemplateField HeaderText="" SortExpression="" ItemStyle-CssClass="GridItemLeftText" ItemStyle-Width="5%" HeaderStyle-CssClass="GridHeaderLeftTextLink" HeaderStyle-ForeColor="White" HeaderStyle-Width="5%">
                    <ItemTemplate>
                        <asp:ImageButton ID="btnDelete" CommandName="Delete task" runat="server" CommandArgument='<%#Eval("id")%>' ImageUrl="../images/iconDelete.gif" OnClick="deleteTask" />
                    </ItemTemplate>
                </asp:TemplateField>


     protected void deleteTask(object sender, EventArgs e)
        {
          //set session
          //Open Popup
        }

现在你可以在Code behind函数中设置session(Deletetask)并调用js函数从codebehind打开popup

答案 1 :(得分:0)

这些是javascript命令,因此请尝试在命令之间添加分号:

e.Row.Cells[1].Attributes["onClick"] = ClientScript.GetPostBackClientHyperlink(this.gvProd, "Select$" + e.Row.RowIndex) + ";location.href='products.aspx?id=" + DataBinder.Eval(e.Row.DataItem, "Namn") + "'";