[英]Get rowindex of gridview on click of a button outside gridview
在我的asp.net application (v4.0)
,我有一個網格視圖。 我使用列表對象將數據綁定到網格視圖。
在網格視圖中,有一個取消按鈕。 單擊取消按鈕后,應用程序應向用戶彈出一條消息,要求確認以繼續進行取消。 即。 您確定要取消記錄嗎? 當用戶選擇是時,則應取消特定記錄。
現在的問題是,當用戶選擇是時,我需要獲取單擊了“取消”按鈕的行的索引,並且需要從用於綁定網格並重新綁定gridview的列表對象中將其刪除。
請讓我知道如何實現這一目標。
感謝所有答復。.im使用自定義彈出窗口而不是內置的“ confirm”方法。 自定義彈出窗口將具有“確定”和“取消”按鈕控件。 僅在單擊“確定”按鈕時,我需要獲取選定的記錄索引。 某些回復中提到的內置確認方法將不適合我的情況。 請讓我知道如何實現這一目標。
將隱藏字段添加到您的頁面
<asp:HiddenField ID="HiddenField1" runat="server" />
使用記錄的Id(使用對應的列名代替Id)作為“取消”的CommandArgument按鈕
<asp:Button ID="btncancel" runat="server" CommandArgument='<%#Eval("Id") %>' Text="Cancel" />
然后在單擊“取消”按鈕時,它將調用gridviews rowcommand函數。 在該函數中,將CommandArgument值保留在隱藏字段中,如下所示
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
HiddenField1.Value = e.CommandArgument.ToString();
}
然后在單擊“確定”按鈕時,它將調用單擊事件。 在該函數中,從列表中刪除項目,然后將列表再次綁定到gridview
protected void btnOK_Click(object sender, ButtonClickEventArgs e)
{
string id = HiddenField1.Value;
//use this id to remove the data from the List
// bind the gridview
}
您是否嘗試過將CommandArgument
值添加到代表該項目的取消按鈕,例如ID? 然后onclick,顯示一個彈出窗口,如果用戶選擇是,則使用ID從集合中刪除該項目,然后簡單地重新綁定網格。 該物品將消失。
嘗試這個..
您可以使用javascript函數。
<asp:Button ID="Button1" runat="server" onclientclick="Validate(this) />
在頁面中聲明一個HTML隱藏字段...
<input id="Hidden1" type="hidden" runat="server" clientidmode="static"/>
function Validate(obj) {
var r = confirm("are you sure you want to cancel ?");
if (r == true) {
var id = obj.id.toString();
var index = id.split("_");
var RowNumber = index[2].toString();
document.getElementById('Hidden1').value=RowNumber ;
}
else {
return;
}
}
在這里,我們獲得按鈕的id
有點像ContentPlacedholde_Button1_0
..然后將其拆分以獲取索引。
在取消按鈕上使用命令名稱和命令參數,如下所示:
<asp:Button ID="btncancel" runat="server" CommandArgument='<%#Eval("Id") %>' CommandName="Cancel" Text="Cancel" />
然后在gridviewRowcommand上使用以下命令:
if (e.CommandName == "Cancel")
{
int count = GridViewName.Rows.Count;
for (int i = 0; i < count; i++)
{
int id = Convert.ToInt32(e.CommandArgument);
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.