Asp.net
使用 asp:Button 將參數傳遞給函式
我正在嘗試將參數傳遞
onClick給asp:Button<asp:Button name='ProductID' onclick="confirm_product_Click" ID="confirmitem" runat="server" Text="accept">參數是
<%=product.ProductId %>。我不能使用
CommandArguments,因為該值像純文字一樣傳遞。我嘗試使用隱藏輸入,但失敗了。
我也嘗試使用表單操作:
<form method="post" action="?ProductID=<%=product.ProductId %>"> <asp:Button name='ProductID' onclick="confirm_product_Click" ID="confirmitem" runat="server" Text="accept"> </form>但它不會將值發送到函式。有人可以幫我解決這個問題嗎?
在你的 aspx
<asp:Button ID="test" runat="server" CommandArgument='<%#Eval("product.ProductId")%>' CommandName="ThisBtnClick" OnClick="MyBtnHandler" />在後面的程式碼中
void MyBtnHandler(Object sender, EventArgs e) { Button btn = (Button)sender; switch (btn.CommandName) { case "ThisBtnClick": DoWhatever(btn.CommandArgument.ToString()); break; case "ThatBtnClick": DoSomethingElse(btn.CommandArgument.ToString()); break; } }
如果它是一個連結按鈕…
<asp:LinkButton ID="test" runat="server" CommandArgument='<%#Eval("product.ProductId")%>' OnClick="MyBtnHandler" /> protected void MyBtnHandler(object sender, EventArgs e) { string ProductID = ((LinkButton)sender).CommandArgument.ToString(); ... }