PDA

View Full Version : سوال: گرفتن تاییدیه قبل از حذف رکورد



yakooza2009
پنج شنبه 13 آبان 1389, 20:37 عصر
سلام دوستان عزیز

من در یک دکمه کدی نوشتم که همه رکورد های یک جدول و کامل حذف میکنه

همینطور که میدونید خب این کار خطرناکه

آیا روشی هس حالا با جاوا اسکریپت یا آژاکس که قبل از اجرای این متد از کاربر تاییدیه بگیره ؟

majnun
پنج شنبه 13 آبان 1389, 21:03 عصر
کی گفته حذف کردن خظرناکه ؟ من یجا تو برنامه یه شرکتی دیده بودم برای هر جدول یه فیلد داشت که بولین بود
اگه این فیلد مقدارش false بود به این معنی بود که فیلد حذف شده و برنامه به اون اهمیت نمیداد

جالب اینجاست که از روی همین کار کلی به قول خودشون پول ریکاروی اطلاعات میگرفتن :قهقهه:

Kia_MLS
پنج شنبه 13 آبان 1389, 21:49 عصر
سلام دوستان عزیز

من در یک دکمه کدی نوشتم که همه رکورد های یک جدول و کامل حذف میکنه

همینطور که میدونید خب این کار خطرناکه

آیا روشی هس حالا با جاوا اسکریپت یا آژاکس که قبل از اجرای این متد از کاربر تاییدیه بگیره ؟

بله، با جاوا اسكريپت به راحتي امكان پذير هست


<asp:Button ID="btnDeleteAll" runat="server" onclick="btnDeleteAll_Click"
Text="حذف همه" OnClientClick="return(confirm('آیا مطمئن هستید؟'))"/>

rana-writes
پنج شنبه 13 آبان 1389, 22:23 عصر
سلام
از Ajax هم می تونین استفاده کنین
یه ScriptManager تو صفحه تون بندازین
بعد روی دکمه ای که قراره عمل حذف انجام بده در حالت Design یه گزینه به اسم Add Exstender داره
وقتی روش کلیک کردین از پنجره باز شده ConfirmButtonExtender رو انتخاب کنین که یه همچین خط کدی به برنامه تون اضافه میکنه:


<cc1:ConfirmButtonExtender ID="Del_ConfirmButtonExtender" runat="server"
ConfirmText="آیا میخواهید فیلد مورد نظر حذف شود؟" Enabled="True" TargetControlID="Del">
</cc1:ConfirmButtonExtender>

بعد هم همین تموم شد!

موفق باشید

pedram_ns
پنج شنبه 13 آبان 1389, 23:51 عصر
بله، با جاوا اسكريپت به راحتي امكان پذير هست


<asp:Button ID="btnDeleteAll" runat="server" onclick="btnDeleteAll_Click"
Text="حذف همه" OnClientClick="return(confirm('آیا مطمئن هستید؟'))"/>


اگر بخواهیم بصورت yes و no باشه چطور می شه؟

Kia_MLS
شنبه 15 آبان 1389, 21:10 عصر
اگر بخواهیم بصورت yes و no باشه چطور می شه؟

میتونی از JQuery استفاده کنی
لینک زیر رو نگاه کن
http://abeautifulsite.net/blog/2008/12/jquery-alert-dialogs/

Kia_MLS
شنبه 15 آبان 1389, 21:26 عصر
اگر بخواهیم بصورت yes و no باشه چطور می شه؟

با استفاده از VB Script هم امكانش هست
كد زير تابع confirm جاوااسكريپت مربوط به صفحه جاري رو به شيوه اي كه ميبينيد تغيير ميده:



<script language="javascript">
/*@cc_on @*/
/*@if (@_win32 && @_jscript_version>=5)
function window.confirm(str)
{
execScript('n = msgbox("'+str+'","4132")', "vbscript");
return(n == 6);
}
@end@*/
</script>


نحوه تعريف دكمه هم به صورت قبل هستش و نيازي به تغيير اون نيست:



<asp:Button ID="btnDeleteAll" runat="server" onclick="btnDeleteAll_Click"
Text="حذف همه" OnClientClick="return(confirm('آیا مطمئن هستید؟'))"/>

pedram_ns
شنبه 15 آبان 1389, 21:37 عصر
فرقی نکرد!!!!!!!!!

Kia_MLS
شنبه 15 آبان 1389, 22:04 عصر
فرقی نکرد!!!!!!!!!

اين كد رو اجرا كن:



<%@ Page Language="C#‎" AutoEventWireup="true" CodeBehind="WebForm1.aspx.cs" Inherits="MyPrj.WebForm1" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title></title>
</head>
<body>
<form id="form1" runat="server">
<asp:Button ID="btnDeleteAll" runat="server"
Text="حذف همه" OnClientClick="return(confirm('آیا مطمئن هستید؟'))"/>

</form>
<script language="javascript">
/*@cc_on @*/
/*@if (@_win32 && @_jscript_version>=5)
function window.confirm(str)
{
execScript('n = msgbox("' + str + '","4132")', "vbscript");
return(n == 6);
}
@end@*/
</script>
</body>
</html>

pedram_ns
شنبه 15 آبان 1389, 23:02 عصر
عزیز من یک صفحه رو فقط با این کدهای شما ایجاد کردم هنوز هم بصورت ok و cancel میاد.

Kia_MLS
یک شنبه 16 آبان 1389, 09:47 صبح
عزیز من یک صفحه رو فقط با این کدهای شما ایجاد کردم هنوز هم بصورت ok و cancel میاد.

عجیبه!!!
آخه واسه من به صورت Yes/No میاد
تازه با تغییر اون عدد به 4130و 4131و 4133 هم میتونیم به جای Yes/No گزینه های دیگه رو هم داشته باشیم
شاید مشکل از مرورگر شما باشه
من از IE8 استفاده میکنم و VS2008

pedram_ns
یک شنبه 16 آبان 1389, 23:46 عصر
شاید. متاسفانه به علت برخی از مشکلات با ie و فایرفاکس نمی تونم کار کنم و فقط با opera کار می کنم اگر به اپرا دسترسی دارید چک کنید ببینید مشکل از اونه؟
در نت اسکیپ هم همینطوره!