ASP.Net Gridviewで「削除確認」オプションを追加するにはどうすればよいですか?ASP.Net Gridviewで「削除の確認」オプションを追加するには?
答えて
これはそれを行う必要があります。
私はここでそれを見つけた:http://forums.asp.net/p/1331581/2678206.aspx
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:ImageButton ID="DeleteButton" runat="server" ImageUrl="~/site/img/icons/cross.png"
CommandName="Delete" OnClientClick="return confirm('Are you sure you want to delete this event?');"
AlternateText="Delete" />
</ItemTemplate>
</asp:TemplateField>
イメージを使用したくない場合は、@ Saksham-Guptaの解決策のようにImageButtonの代わりにLinkButtonを使用することもできます。これは –
これが私の推奨する方法です。かなりまっすぐ進む:
http://www.codeproject.com/KB/webforms/GridViewConfirmDelete.aspx
あなたはボタンのOnClientClickを使用して行うことができます。
OnClientClick="return confirm('confirm delete')"
の下にありがとう、ポップアップメッセージボックス、メッセージボックスとしてではなく、Webページ自体に表示する方法はありますか? –
これは少し異なります。私のgridviewではAutoGenerateDeleteButton="true"
を設定しました。削除ボタンを見つけるには、jQueryを使用して、見つかったアンカーにクリックイベントを追加します。
jQuery("a").filter(function() {
return this.innerHTML.indexOf("Delete") == 0;
}).click(function() { return confirm("Are you sure you want to delete this record?");
});
これはすばやく簡単です。 Deleteを表示するページのEvery AnchorがjQueryによって選択され、イベントが追加されることに注意してください。
うまく動作します。より具体的なセレクターを追加して、必要に応じてグリッド内のアンカーを探すことで、さらに進化させることができます。 –
javascript confirm()関数を使用して取得する「Are you sure?」ポップアップでユーザーがキャンセルをクリックしたときのcommandField Deleteボタンの取得に問題がありました。私はそれをテンプレートフィールドに変更したくなかった。
問題は、私が見るように、これらのcommandFieldボタンには、ポストバックを実行するためのJavascriptがすでにいくつか関連付けられていることがあります。単にconfirm()関数を追加するだけの効果はありませんでした。ここで
が、私はそれを解決方法は次のとおりです。jQueryのを使用して
は、私が最初にそれぞれが(いくつかがある)ページ上のボタンを削除した場合、訪問者が合意されたかを確認するポップをキャンセルしたかどうかに基づいて、ボタンの関連するJavascriptを操作しますアップ。
<script language="javascript" type="text/javascript">
$(document).ready(function() {
$('input[type="button"]').each(function() {
if ($(this).val() == "Delete") {
var curEvent = $(this).attr('onclick');
var newContent = "if(affirmDelete() == true){" + curEvent + "};"
$(this).attr('onclick',newContent);
}
});
}
function affirmDelete() {
return confirm('Are you sure?');
}
</script>
これを試してみてください:
私は更新に使用してボタンを削除します。それはボタンを編集しないでください。自動生成ボタンを使用することができます。
protected void gvOperators_OnRowDataBound(object sender, GridViewRowEventArgs e)
{
if(e.Row.RowType != DataControlRowType.DataRow) return;
var updateButton = (LinkButton)e.Row.Cells[0].Controls[0];
if (updateButton.Text == "Update")
{
updateButton.OnClientClick = "return confirm('Do you really want to update?');";
}
var deleteButton = (LinkButton)e.Row.Cells[0].Controls[2];
if (deleteButton.Text == "Delete")
{
deleteButton.OnClientClick = "return confirm('Do you really want to delete?');";
}
}
あなたGridview
がAutoGenerateDeleteButton="true"
で使用する場合は、LinkButton
にそれを変換することができる:
クリックしのGridViewタスクと編集列。
選択は選択したフィールドでを削除し、このフィールドはTemplateFieldに変換をクリックしてください。そして、OKをクリックします。
は、今すぐあなたの
LinkButton
が生成されます。私はそれ他の列と一緒に簡単なエントリにするために@statmasterによって与えられた答えを変更して、私は任意の画像を望んでいなかった
OnClientClick="return confirm('Are you sure you want to delete?'); "
:あなたはこのようLinkButton
にOnClientClick
イベントを追加することができます。
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:LinkButton ID="LinkButton1" runat="server" CommandName="Delete" OnClientClick="return confirm('Are you sure you want to delete this entry?');">Delete </asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
Forecolorプロパティを使用してテキストの色を変更することができます。
これはグリッドビューでの確認で削除する最も簡単な方法です – JoshYates1980
私はグリッドビューからレコードを削除する前に、確認のプロンプトを追加するこの方法が好きです。これは、aspxページのGridView Webコントロール内にネストされたCommandField定義です。ここには何もない - 単純なCommandfield。
<asp:CommandField ShowEditButton="true" UpdateText="Save" ShowDeleteButton="True">
<ControlStyle CssClass="modMarketAdjust" />
</asp:CommandField>
その後、私がしなければならなかったすべては、GridViewコントロールのRowDeletingイベントにコードを追加しました。このイベントはの前に行が実際に削除されます。これにより、ユーザーの確認を取得し、後で取り消したくない場合にイベントをキャンセルすることができます。ここで私はRowDeletingイベントハンドラに入れたコードです:
Private Sub grdMarketAdjustment_RowDeleting(sender As Object, e As GridViewDeleteEventArgs) Handles grdMarketAdjustment.RowDeleting
Dim confirmed As Integer = MsgBox("Are you sure that you want to delete this market adjustment?", MsgBoxStyle.YesNo + MsgBoxStyle.MsgBoxSetForeground, "Confirm Delete")
If Not confirmed = MsgBoxResult.Yes Then
e.Cancel = True 'Cancel the delete.
End If
End Sub
はそれが正常に動作するようです。
@ statmasterの回答はこの方が望ましいです。まず、コードをaspxページに置くだけで済みます(これにはaspxページとコードビハインドページの両方にコードが必要です)。第2に、このソリューションにはMsgBoxが必要であり、Webサーバーでは動作しない可能性があります。 MsgBoxを使用するのではなく、ScriptManagerを使用してコードビハインドでアラートを表示することができ、Visual StudioとWebサーバーの両方で動作します。しかし、コードビハインドにコードを必要としない単純なソリューションを使用するだけではどうですか? –
このコードは問題なく機能しています。
jQuery("a").filter(function() {
return this.innerHTML.indexOf("Delete") == 0;
}).click(function() { return confirm("Are you sure you want to delete this record?");
});
私はかなり彼らは削除しようとしている項目を正確にユーザーに通知するためにGridView
RowDataBound
イベントにコードを追加することなどです。やや良いユーザーエクスペリエンス
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
LinkButton lnkBtnDelete = e.Row.FindControl("lnkBtnDelete") as LinkButton;
// Use whatever control you want to show in the confirmation message
Label lblContactName = e.Row.FindControl("lblContactName") as Label;
lnkBtnDelete.Attributes.Add("onclick", string.Format("return confirm('Are you sure you want to delete the contact {0}?');", lblContactName.Text));
}
}
私はJavaScriptのソリューションを愛し、動的なAjaxのロードで動作するようにいくつかの更新があります
$(document).on("click", "a", function() {
if (this.innerHTML.indexOf("Delete") == 0) {
return confirm("Are you sure you want to delete this record?");
}
});
はそれが助けを願って、あなたは内部に「削除の確認」オプションを追加したい場所
- 1. GridView ImageButtonレコードの確認と削除
- 2. デバイスの変更(追加/削除)イベントを確認する
- 3. コマンドフィールドの削除確認プロンプトを詳細表示に追加する方法は?
- 4. 編集オプション付きのWebGridに削除オプションを追加するには
- 5. Knockoutjs ObservableArrayで追加または削除された要素を確認する
- 6. オプションを追加、削除、追加したときのピックリストエラー
- 7. 編集操作が削除かUITableViewControllerで追加するかを確認する
- 8. 動的にASP.NETで表の行を追加/削除する
- 9. "アップデートを確認する"オプションを追加する
- 10. 削除確認
- 11. asp.net削除アクションを条件付きで確認する
- 12. Gridview削除ボタンの位置? asp.netで?
- 13. 削除の確認
- 14. C#ASPX ASP.NET - 追加&テーブル行を削除
- 15. gridviewの行削除イベントで削除を確認するためのjavascriptを書く
- 16. 削除&選択ボックスのオプションを追加し、他の選択は
- 17. ASP.NET GridViewにフッターを動的に追加
- 18. カレンダービューから[追加]オプションを削除することはできますか?
- 19. ブートストラップの確認削除モーダル
- 20. クライアント削除の確認
- 21. 私はどのようにプログラムをWindowsに追加/削除するプログラムリストを追加/削除する
- 22. ユーザーがページを追加/削除できるASP.NET MVC Webサイト
- 23. バイパスノード削除の確認フォームをDrupalで
- 24. アップロードスクリプトに確認ページを追加する
- 25. gridview(asp.net)にリンクを追加する方法は?
- 26. フォーム内の複数の入力フィールドの追加/削除オプション
- 27. データビューの行を削除する前に削除を確認する
- 28. Javascriptでliを追加、削除する
- 29. 選択したアイテムのgridviewでASp.NETメンバーシップデータベースからメンバーを削除するには?
- 30. 削除時に確認メッセージを表示
)グリッドビューのボタンかグリッドビューの外側ですか? –