Как добавить параметр «подтвердить удаление» в 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>
Если вы не хотите использовать изображение, то вы можете так же легко использовать LinkButton вместо ImageButton, как показано в решении от @ Saksham-Gupta ниже –
Это мой предпочтительный метод. Довольно прямо вперед:
http://www.codeproject.com/KB/webforms/GridViewConfirmDelete.aspx
можно сделать с помощью OnClientClick кнопки.
OnClientClick="return confirm('confirm delete')"
, спасибо, он работал для меня, но в форме всплывающего окна сообщений , есть ли способ появиться на самой веб-странице не как окно сообщения –
Я сделал это немного иначе. В моем gridview я установил AutoGenerateDeleteButton="true"
. Чтобы найти кнопку удаления, я использую jQuery и добавляю событие click к найденным Anchors.
jQuery("a").filter(function() {
return this.innerHTML.indexOf("Delete") == 0;
}).click(function() { return confirm("Are you sure you want to delete this record?");
});
Это быстро и просто для того, что мне нужно. Просто помните, что каждый якорь на странице, отображающей Delete, будет выбран jQuery и будет добавлен к нему событие.
Хорошо работает. Вы можете улучшить ситуацию, добавив более конкретный селектор, чтобы искать привязки в сетке, если вам это нужно. –
У меня возникли проблемы с получением кнопки CommandField Delete, чтобы почтить ответ «return false», когда пользователь нажал кнопку «Отменить» во всплывающем окне «Вы уверены», с помощью функции подтверждения javascript(). Я не хотел менять его в поле шаблона.
Проблема, как я вижу, заключалась в том, что у этих кнопок 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>
Попробуйте это:
Я использовал для Update и Удалить кнопки. Он не касается Редактировать кнопка. Вы можете использовать автоматически сгенерированные кнопки.
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 Задачи, а затем Edit Columns.
Выберите Удалить в выбранных полях и нажмите на Преобразовать это поле в TemplateField.Затем нажмите кнопку OK :
Теперь ваш
LinkButton
будет сгенерирован. Вы можете добавитьOnClientClick
события вLinkButton
, как это:
OnClientClick="return confirm('Are you sure you want to delete?'); "
Я не хочу никакого изображения таким образом, я изменил ответ, данный @statmaster, чтобы сделать его простой записью вместе с другими столбцами.
<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.
Это самый простой способ удалить с подтверждением в gridview. – JoshYates1980
Мне нравится этот способ добавления запроса подтверждения перед удалением записи из сетки. Это определение CommandField, вложенное в веб-элемент управления GridView на странице aspx. Здесь нет ничего необычного - просто прямое Командное поле.
<asp:CommandField ShowEditButton="true" UpdateText="Save" ShowDeleteButton="True">
<ControlStyle CssClass="modMarketAdjust" />
</asp:CommandField>
Тогда все, что я должен был сделать, это добавить код в событие RowDeleting в GridView контроля. Это событие вызывает до строка фактически удалена, что позволяет получить подтверждение пользователя и отменить событие, если он не хочет отменять все. Вот код, который я ставлю в обработчик события 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
И это, кажется, работает хорошо.
. Ответ на этот вопрос является предпочтительным. Во-первых, вам нужно только поставить код на страницу aspx (для этого требуется код как на странице aspx, так и на странице с кодом). Во-вторых, для этого решения требуется MsgBox, и он может не работать на веб-сервере. Вы все равно можете использовать ScriptManager для отображения предупреждения в коде, вместо использования MsgBox, и он будет работать как в Visual Studio, так и на веб-сервере. Но почему бы просто не использовать более простое решение, которое не требует кода в коде? –
Этот код подходит для меня.
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 и некоторые обновления для работы с динамическим АЯКСОМ загрузкой:
$(document).on("click", "a", function() {
if (this.innerHTML.indexOf("Delete") == 0) {
return confirm("Are you sure you want to delete this record?");
}
});
Надеется, что это поможет;)
- 1. Как добавить параметр readmore в gridview?
- 2. Параметр передачи ASP.NET GridView
- 3. ASP.NET MVC - как заставить пользователей подтвердить удаление
- 4. Подтвердить Gridview
- 5. Добавить строку в ASP.NET GridView?
- 6. Удаление строки из Gridview в asp.net
- 7. Удаление записи из gridview в приложении ASP.NET
- 8. Как добавить ссылку в gridview (asp.net)?
- 9. Как добавить флажок в gridview asp.net
- 10. подтвердить удаление для gridview row с bootstrap modal
- 11. Как добавить параметр отчета в asp.net mvc
- 12. удаление строки в GridView
- 13. GridView onrowcommand подтвердить поле
- 14. Добавить заголовки VB.net/asp.net gridview?
- 15. Как добавить ComboBox к asp.net unbound GridView
- 16. Страница не удаление из БД/Gridview ASP.NET
- 17. Подтвердить удаление с помощью пароля в ASP.NET MVC
- 18. Добавить новые строки в gridview в asp.net
- 19. Подтвердить удаление javascript, php
- 20. Подтвердить QueryStrings в ASP.NET
- 21. Добавить GridViewDropDown Column telerik gridView в asp.net
- 22. ASP.NET динамически добавить столбец в Gridview
- 23. добавить разбивку на страницы в gridview asp.net
- 24. Подтвердить пароль в asp.net
- 25. Лучший способ реализовать удаление в ASP.NET MVC «gridview»?
- 26. Как подтвердить удаление документа в OrientDB?
- 27. Добавить проверку строки GridView в ASP.NET
- 28. Удаление из GridView
- 29. Как добавить параметр на страницу ASP.net
- 30. Невозможно добавить кнопку столбец в asp.net GridView
, где вы хотите добавить «Подтвердить удаление» варианта в внутри кнопка gridview или внешний вид сетки? –