ایجاد باکس confirmation Yes No سمت سرور با استفاده از jQuery
چهارشنبه 4 فروردین 1395این مقاله چگونگی نمایش باکس confirmation سرور ساید را با تغییر آیتم در DropDownList ، با استفاده از متد confirm جاوا اسکریپت و بر اساس پاسخ کاربر (Ok یا Cancel) ، توضیح میدهیم.
توضیحات:با استفاده از متد confirm جاوا اسکریپت می توانید اکشن دکمهOK را در سمت سرور اجرا کنید زیرا اجازه می دهد تا Postback انجام شود. اما با کلیک روی دکمه cancel ، نمی توانیم عملیات را در سمت سرور انجام دهیم ، زیرا اجازه Postback ندارد. اما گاهی اوقات برای عملیات های مختلف به هر دو دکمه OK و Cancel نیاز است. برای تایید کاربر قبل از انجام یک اکشن ترجیحا باید از او سوال شود.
به عنوان مثال: در DropDownList سه وضعیت قرار داده شده است که با انتخاب هر کدام ، در یک باکس از کاربر سوال " آیا مایل به تغییر وضعیت هستید ؟" پرسیده میشود ، اگر کاربر بروروی OK کلیک کند وضعیت تغییر کرده و پیام "OK کلیک شد" را نمایش میدهد و اگر روی Cancel کلیک کند ،پیام "Cancel کلیک شد " را نمایش میدهد.
پیاده سازی: یک صفحه وب برای نمایش آن ایجاد میکنیم:
صفحه index.aspx را باز کرده و کدهای زیر را در آن وارد میکنیم.
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="index.aspx.cs" Inherits="Exame3.index" %> <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.3/jquery.min.js"></script> <script type="text/javascript"> function Confirm(sender) { var selectedText = $(sender).find("option:selected").text(); if (confirm("آیا مایل به تغییر وضعیت " + selectedText + " هستید ?")) { $("#hfResponse").val('Yes'); } else { $("#hfResponse").val('No'); } } </script> </head> <body dir="rtl"> <form id="form1" runat="server"> <div> وضعیت: <asp:DropDownList ID="ddlStatus" Width="300px" runat="server" onchange="Confirm(this)" OnSelectedIndexChanged="ddlStatus_SelectedIndexChanged" AutoPostBack="true"> <asp:ListItem Text="فعال" /> <asp:ListItem Text="غیر فعال" /> <asp:ListItem Text="درانتظار" /> </asp:DropDownList> <asp:Literal ID="ltrlMessage" runat="server"></asp:Literal> <asp:HiddenField ID="hfResponse" runat="server" ClientIDMode="Static" /> </div> </form> </body> </html>
در قسمت index.aspx.cs کدهای زیر را وارد میکنیم.
protected void ddlStatus_SelectedIndexChanged(object sender, EventArgs e) { string confirmValue = hfResponse.Value; if (confirmValue == "Yes") { ltrlMessage.Text = "OK کلیک شد"; } else { ltrlMessage.Text = " Cancelکلیک شد "; } }
در این مرحله برنامه را اجرا کنید
خروجی بصورت زیر است
- ASP.net
- 2k بازدید
- 5 تشکر