PDA

View Full Version : confirmDelete در گریدویو



fereshte22
شنبه 24 شهریور 1386, 16:06 عصر
سلام
من یه دکمه حذف در گریدویو دارم که و با مشخص کردن سطرهای انتخاب شده(با چک باکس )
برای حذف سطرهای گریدویو به کار میرود.
مشکل من در ایجاد دکمه تایید برای delete است.
من طبق نمونه کدهای اقای راد به صورت زیر کار کردم


<script language="javascript" type="text/javascript">
function confirmDelete()
{
var xCounter = 0;
if (chk_Array_IDs != null)
{
for (i=0;i<chk_Array_IDs.length;i++)
{
var ref_chk = document.getElementById(chk_Array_IDs[i]);
if (ref_chk != null)
if (ref_chk.checked == true)
++xCounter;
}
if (xCounter == 0)
{
alert("!هیچ رکوردی انتخاب نشده است");
return false;
}
else
{
var ret_confirm = confirm("آیا مطمئن به حذف " +xCounter+ " رکورد انتخابی هستید؟");
if (ret_confirm == true)
{
checkclick = "true";
return true;
}
else
return false;
}
}
}
</script>

و


Protected Sub AuthorsGridView_RowCreated(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewRowEventArgs) Handles AuthorsGridView.RowCreated
If e.Row.RowType = ListItemType.Footer Then
Dim ButtDel As Button = CType(e.Row.Cells(5).Controls(1), Button)
ButtDel.OnClientClick = "return confirmDelete();"
End If
End Sub

ولی مشکل اینه که اصلا این کد کار نمیکند و بدون اینکه پیام تایید نمایش داده شود عمل حذف انجام میشود.
ایا کار دیگری هم باید انجام دهم؟

ClaimAlireza
شنبه 24 شهریور 1386, 16:23 عصر
من از کد زیر استفاده می کنم درست کار میکنه ایشا الله مشکلت حل شه:

html:



<ItemTemplate>
<asp:LinkButtonID="LinkButton1"CommandArgument='<%# Eval("id") %>'CommandName="Delete"runat="server">
Delete</asp:LinkButton>
</ItemTemplate>


c#:



protectedvoid GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
LinkButton l = (LinkButton)e.Row.FindControl("LinkButton1");
l.Attributes.Add("onclick", "javascript:return " +
"confirm('Are you sure you want to delete record" +
DataBinder.Eval(e.Row.DataItem, "name") + "')");
}
}

sama01
شنبه 24 شهریور 1386, 16:55 عصر
من از این استفاده می‌کنم.

<asp:Button ID="btnDelete" Text="حذف"
CommandName="delete" Width="75" runat="server"
OnClientClick="return confirm('آیا حذف شود؟);"/>

fereshte22
شنبه 24 شهریور 1386, 17:24 عصر
من کد دوستان را هم امتحان کردم ولی متاسفانه مشکلم حل نشد.
من فقط یه دکمه حذف دارم و در هر ردیف دکمه حذف ندارم


<asp:TemplateField HeaderText="حذف">
<FooterTemplate>
<asp:Button ID="btnRemove" runat="server" OnClientClick="return confirm('آیا حذف شود؟);" BorderStyle="Solid"
BorderWidth="1px" CommandName="remove" Font-Names="Tahoma" Font-Size="11px" Text="حذف" />
</FooterTemplate>
<ItemTemplate>
<asp:CheckBox ID="ChkRemove" runat="server" />
</ItemTemplate>
<ItemStyle HorizontalAlign="Center" />
<HeaderStyle HorizontalAlign="Center" />
<FooterStyle HorizontalAlign="Center" />
</asp:TemplateField>

ایا برای این حالت هم کد دوستان باید جواب دهد؟

Behrouz_Rad
شنبه 24 شهریور 1386, 22:43 عصر
کدهای روال Page_LoadComplete رو فراموش نکن!