PDA

View Full Version : سوال: نمایش پیغام



article
سه شنبه 05 آذر 1387, 09:31 صبح
چه طور می توانم پیغامی در هنگام انجام عملیات در صفحات وب بدهم همانند messagebox ها در کنترل های ویندوزی به طوری کع کنترل کامل را بر روی آنداشته باشم:قلب::ناراحت:

ali_sorouri2005
سه شنبه 05 آذر 1387, 11:01 صبح
ببين اين كارو ميتوني بكني.
ولي تا جاييكه من مي دونم توي تمام مرورگرها قابليت نمايش نداره.
پيغامت رو تو خود صفحه با يك label نشون بدي بهتره.

hassanf
سه شنبه 05 آذر 1387, 11:20 صبح
با توابع زیر :



window.showModalDialog
window.showModelessDialog
window.open

ennovation
سه شنبه 05 آذر 1387, 11:46 صبح
سلام
این کدو میتونی در صفحه aspx خودت اون آخر آخرا قرار بدی



<asp:Panel ID="pnl_customer" runat="server" Style="display: none;" >
<div >
<asp:Label ID="lblinfo" runat="server" Text="Do you want to save?"></asp:Label>
</div>
<div >
<asp:Button ID="btn_add_customer" runat="server" Text="Yes" OnClick="btn_Add_Click" />
<asp:Button ID="btn_cancel_customer" runat="server" Text="No" />
</div>
<asp:Button ID="btn_add_customer_dummy" runat="server" Style="display: none" />
</asp:Panel>
<asp:Button ID="btn_customer_dummy" runat="server" Style="display: none" />
<ajaxToolkit:ModalPopupExtender ID="mpe_add_customer" runat="server" PopupControlID="pnl_customer"
BackgroundCssClass="modalBackground" TargetControlID="btn_customer_dummy" OkControlID="btn_add_customer_dummy"
CancelControlID="btn_cancel_customer" DropShadow="true" />
حالا در صفحه کد #c یک ایونت تعریف میکنی که درصورت جواب بلی دادن چه کارهایی باید انجام گیرد


protectedvoid btn_Add_Click(object sender, EventArgs e)
{ کارهایی که با جواب بلی انجام میگیرد رو اینجا میتونی بنویسی

}


حالا هر جایی که میخوای این پنجره مورد نظر نمایش داده بشه میتونی این دستور بنویسی


mpe_add_customer.Show();

تموم . این کد رو از روی برنامه خودم گذاشتم و مطمن باش که کار میکنه هم روی IE و هم روی firefox . موفق باشی .

ennovation
سه شنبه 05 آذر 1387, 11:53 صبح
http://barnamenevis.org/forum/showthread.php?p=638763&posted=1#post638763

alishirazi
سه شنبه 05 آذر 1387, 12:06 عصر
در جاوا اسکریپت توابع alert و confirm به شما بترتیب قابلیت نمایش پیغام و گرفتن تایید (confirm) را می دهد.

milade
سه شنبه 05 آذر 1387, 17:27 عصر
من که با این نمایش میدم و مشکلی نیست:

msgbox("hi",,"alert")
موفق باشید

article
چهارشنبه 06 آذر 1387, 17:36 عصر
از کنترل هی ویندوزی مثل messagebox نمی توانیم استفاده کنیم

article
چهارشنبه 06 آذر 1387, 19:42 عصر
من کد زیر
(<asp:Panel ID="pnl_customer" runat="server" Style="display: none;" > CancelControlID="btn_cancel_customer" DropShadow="t
<div >
<asp:Label ID="lblinfo" runat="server" Text="Do you want to save?"></asp:Label>
</div>
<div >
<asp:Button ID="btn_add_customer" runat="server" Text="Yes" OnClick="btn_Add_Click" />
<asp:Button ID="btn_cancel_customer" runat="server" Text="No" />
</div>
<asp:Button ID="btn_add_customer_dummy" runat="server" Style="display: none" />
</asp:Panel>
<asp:Button ID="btn_customer_dummy" runat="server" Style="display: none" />
<ajaxToolkit:ModalPopupExtender ID="mpe_add_customer" runat="server" PopupControlID="pnl_customer"
BackgroundCssClass="modalBackground" TargetControlID="btn_customer_dummy" OkControlID="btn_add_customer_dummy"
rue" />)
را که نوشته بودید توی قسمت آخر صفحه اضافه کردم پیغام

Unknown server tag 'ajaxToolkit:ModalPopupExtender'.
Unrecognized tag prefix or device filter 'ajaxToolkit'.

article
جمعه 08 آذر 1387, 12:06 عصر
همه کار هایی که گفتید انجام دادم باز پیغام خطا دریافت کردم

<?xml version="1.0"?>
<!--
Note: As an alternative to hand editing this file you can use the
web admin tool to configure settings for your application. Use
the Website->Asp.Net Configuration option in Visual Studio.
A full list of settings and comments can be found in
machine.config.comments usually located in
\Windows\Microsoft.Net\Framework\v2.x\Config
-->
<configuration>
<appSettings/>
<connectionStrings>
<add name="server_handbalConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=&quot;C:\Program Files\Common Files\server_handbal.mdf&quot;;Integrated Security=True;Connect Timeout=30;User Instance=True" providerName="System.Data.SqlClient"/>
</connectionStrings>

<system.web>
<!--
Set compilation debug="true" to insert debugging
symbols into the compiled page. Because this
affects performance, set this value to true only
during development.
-->
<compilation debug="true">
<assemblies>
<add assembly="System.Windows.Forms, Version=2.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/></assemblies></compilation>
<!--
The <authentication> section enables configuration
of the security authentication mode used by
ASP.NET to identify an incoming user.
-->
<authentication mode="Windows"/>
<!--
The <customErrors> section enables configuration
of what to do if/when an unhandled error occurs
during the execution of a request. Specifically,
it enables developers to configure html error pages
to be displayed in place of a error stack trace.
<customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
<error statusCode="403" redirect="NoAccess.htm" />
<error statusCode="404" redirect="FileNotFound.htm" />
</customErrors>
-->
</system.web>

</configuration>
کد بالا فايل web config من است
controls در آن وجود ندارد که
کد زير را در آن قرار بدهم
<addtagPrefix="asp"namespace="AjaxControls"assembly="AjaxControls"/>
<addtagPrefix="ajaxToolkit"namespace="AjaxControlToolkit"assembly="AjaxControlToolkit
و پيغام
Unknown server tag 'ajaxToolkit:ModalPopupExtender'.
mpe_add_customer:This control cannot be displayed because its TagPrefix is not registered



Exclusive access could not be obtained because the database is in use.
RESTORE DATABASE is terminating abnormally.

milade
جمعه 08 آذر 1387, 12:13 عصر
از کنترل هی ویندوزی مثل messagebox نمی توانیم استفاده کنیم
چرا نمیشه؟

article
شنبه 09 آذر 1387, 21:32 عصر
خیلی باحالی

article
شنبه 09 آذر 1387, 23:04 عصر
webconfigهمه کارهايي که گفتيد انجام دادم دوتا فايل ضميمه را که گفتيد به فايل اضافه کردم
دستورات را به آخر صفحه وبم اضافه کردم
<authentication mode="Windows"/>بعد از دستور
<pages>کدهاي
<controls>
<add tagPrefix="asp" namespace="AjaxControls" assembly="AjaxControls"/>
<add tagPrefix="ajaxToolkit" namespace="AjaxControlToolkit" assembly="AjaxControlToolkit"/>
</controls>
</pages>
را اضافه کردم اما همچنان پيغام

Unable to create type 'ajaxToolkit:ModalPopupExtender'. Could not load file or assembly 'System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.
و

Element 'ModalPopupExtender' is not a known element. This can occur if there is a compilation error in the Web site.
ميدهد.
ممنون ميشم اگه اين پيغام را پيگيري کنيد

article
شنبه 09 آذر 1387, 23:14 عصر
webconfigهمه کارهايي که گفتيد انجام دادم دوتا فايل ضميمه را که گفتيد به فايل اضافه کردم
دستورات را به آخر صفحه وبم اضافه کردم
<authentication mode="Windows"/>بعد از دستور
<pages>کدهاي
<controls>
<add tagPrefix="asp" namespace="AjaxControls" assembly="AjaxControls"/>
<add tagPrefix="ajaxToolkit" namespace="AjaxControlToolkit" assembly="AjaxControlToolkit"/>
</controls>
</pages>
را اضافه کردم اما همچنان پيغام

Unable to create type 'ajaxToolkit:ModalPopupExtender'. Could not load file or assembly 'System.Web.Extensions, Version=3.5.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.
و

Element 'ModalPopupExtender' is not a known element. This can occur if there is a compilation error in the Web site.
ميدهد.
ممنون ميشم اگه اين پيغام را پيگيري کنيد

ennovation
یک شنبه 10 آذر 1387, 00:45 صبح
سلام
میتونی بگی از ورژن چند Framework استفاده میکنی

article
یک شنبه 10 آذر 1387, 15:35 عصر
من از ورژن 1.1 استفاده می کنم

milade
یک شنبه 10 آذر 1387, 16:30 عصر
وژن 1.1 رو داری و میخوای وژن 3.5 هم اجرا بشه؟(شایدم بشه!)
حداقل 2.0 رو بگیر

kiosksoft
یک شنبه 10 آذر 1387, 17:02 عصر
چه طور می توانم پیغامی در هنگام انجام عملیات در صفحات وب بدهم همانند messagebox ها در کنترل های ویندوزی به طوری کع کنترل کامل را بر روی آنداشته باشم:قلب::ناراحت:

سلام



<%@RegisterTagPrefix="cc1"Namespace="BunnyBear"Assembly="msgBox" %>




<cc1:msgBoxid="MsgBox1"runat="server"></cc1:msgBox>





protectedvoid Button1_Click(object sender, EventArgs e)
{
MsgBox1.alert("Message box in asp.net");
MsgBox1.confirm("message box in asp.net ", "ok");
}


منبع : CodeProject.com

article
دوشنبه 11 آذر 1387, 02:07 صبح
ورژن 2 را هم امتحان کردم اما نشد

article
دوشنبه 11 آذر 1387, 02:10 صبح
ممنون که به فکر بودیدی من از زبان c# استفاده می کنم

milade
دوشنبه 11 آذر 1387, 05:13 صبح
میشه کد وب کانفیگ و کد یه صفحه که درونش از اجاکس استفاده کردید رو بزارید؟

kiosksoft
دوشنبه 11 آذر 1387, 10:06 صبح
ممنون که به فکر بودیدی من از زبان c# استفاده می کنم

منظورتون چیه؟

این روش در asp.net ,چه سی شارپ چه وی بی, کار میکنه

article
سه شنبه 12 آذر 1387, 00:05 صبح
اين هم کد برنامه ممنون ميشوم اگه کسي با آژاکس آشنايي داره مشکلش حل کن
در ضمن من از فرم ورک 2 استفاده مي کنم

RoostaYeBekr
جمعه 15 آذر 1387, 01:56 صبح
با سلام
:لبخند:
من فقط از یک کلاس برای انجام این کار استفاده کرده ام.


using System;
using System.Data;
using System.Configuration;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Collections;
using System.Collections.Specialized;
using System.Text;
///<summary>
/// Summary description for messagebox
///</summary>
publicclass Class_MessageBox
{
privatestaticHashtable m_executingPages = newHashtable();
public Class_MessageBox() { }
publicvoid Show(string sMessage)
{
if (!m_executingPages.Contains(HttpContext.Current.Ha ndler))
{
Page executingPage = HttpContext.Current.Handler as Page;
if (executingPage != null)
{
Queue messageQueue = newQueue();

messageQueue.Enqueue(sMessage);
m_executingPages.Add(HttpContext.Current.Handler, messageQueue);

executingPage.Unload += newEventHandler(ExecutingPage_Unload);
}
}
else
{
Queue queue = (Queue)m_executingPages[HttpContext.Current.Handler];

queue.Enqueue(sMessage);
}
}

privatestaticvoid ExecutingPage_Unload(object sender, EventArgs e)
{
Queue queue = (Queue)m_executingPages[HttpContext.Current.Handler];
if (queue != null)
{
StringBuilder sb = newStringBuilder();

int iMsgCount = queue.Count;

sb.Append("<script language='javascript'>");

string sMsg;
while (iMsgCount-- > 0)
{
sMsg = (string)queue.Dequeue();
sMsg = sMsg.Replace("\n", "\\n");
sMsg = sMsg.Replace("\"", "'");
sb.Append(@"alert( """ + sMsg + @""" );");
}

sb.Append(@"</script>");

m_executingPages.Remove(HttpContext.Current.Handle r);

HttpContext.Current.Response.Write(sb.ToString());
}
}
}

و بعد در برنامه می نویسی :


protectedvoid Page_Load(object sender, EventArgs e)
{
Class_MessageBox MyMessage = new Class_MessageBox();
MyMessage.Show("Hello");
}

article
جمعه 15 آذر 1387, 02:47 صبح
با این روشی که زحمت کشیدید و نوشتید می تونم کنترل روی دکمه yes noداشته باشم ؟

RoostaYeBekr
جمعه 15 آذر 1387, 02:50 صبح
با سلام
:لبخندساده:
ببین من یک راه حل بهتر کشف کردم . فکر کنم این یکی بهتر و ساده تر و قابل انعطاف تره .

RoostaYeBekr
جمعه 15 آذر 1387, 21:45 عصر
با سلام
پس چرا این یکی فایلی که در پست قبلی فرستادم را ندیدید.:متفکر:
این یکی بهتر است ها .:متعجب:

محمدامین شریفی
شنبه 16 آذر 1387, 06:39 صبح
از کنترل هی ویندوزی مثل messagebox نمی توانیم استفاده کنیم
1)اضافه کردن add reference به پروژه: system.windows.form
2)نوشتن using در header : using system.windows.form
3)حالا کد messagebox خود را بنویسید!


------------------

دوستان در مقوله های دات نت یکمی "فریم ورکی" فکر کنید.
همچنین میشود عین برنامه های #C خود را وارد asp.net کنید،با کمک قابلیت C# Applet (http://www.google.com/search?q=C%23+aaplet&ie=utf-8&oe=utf-8&aq=t&rls=org.mozilla:en-US:official&client=firefox-a)

پیروز باشید

article
شنبه 16 آذر 1387, 09:51 صبح
دیدم ولی انجام نشد
در ضمن ممنون

kiosksoft
شنبه 16 آذر 1387, 09:54 صبح
دوست عزیز شما همه ش میگید که نشد , یه نمونه از برنامه خودتون بفرستید, من یکی از این راه حل ها رو بهش اضافه میکنم براتون میفرستم.

RoostaYeBekr
شنبه 16 آذر 1387, 14:15 عصر
دیدم ولی انجام نشد
در ضمن ممنون
فایل دومی که من فرستادم را می گوئید انجام نشد یا آن فایلی که bia2dadash2 فرستاد را می گوئید ؟

article
شنبه 16 آذر 1387, 22:33 عصر
ببینید من می خواهم پیغامی را که نمایش می دهد اگه دکمه yes را انتخاب کردم مقدار true برگردون یا اگه حالا no را انتخاب کردم مقدار false بر گردون
در ضمن توی یک دکمه ممکن چند بار بخواهم از این نمایش پیغام استفاده کنم
این مشکل من
تمام کدهایی که دادید خوب بود ولی این مشکل من حل نکرد

RoostaYeBekr
یک شنبه 17 آذر 1387, 00:34 صبح
با سلام
:لبخندساده:
گفتید:


ببینید من می خواهم پیغامی را که نمایش می دهد اگه دکمه yes را انتخاب کردم مقدار true برگردون یا اگه حالا no را انتخاب کردم مقدار false بر گردون

به هر حال وقتی شما این سوال را در بخش ASP.NET مطرح می کنید ، صحبت شما در بالا به چه معنا است ؟
به این معنا است که اگر کاربر دکمه ی No را زد ، PostBack نشه ( یعنی مقدار false دارد برگردانده می شود ) . ولی اگر که کاربر دکمه ی Yes را زد ، پس قطعا PostBack می شه ( یعنی مقدار True را دارد برمی گرداند ) . وقتی هم که PostBack می شه خوب آن کاری که قرار است کدهای سمت Server انجام دهند ، همان اتفاق می افتد.

اما اگر شما این سوال را در بخش javascript مطرح می کردید ، دیگر بحث PostBack نبود . بلکه همان بحث True و false شما بود. مثلا صورت مسئله می تونست این باشه که اگر که false برمی گرداند ، فلان کنترل Text را پاک نکن و اگر که True برگرداند ، کنترل Text را پاک کن. در هر صورت PostBack نمی شد.

می دونی چی می خوام بگم :
می خوام بگم که زمانی که کدنویسی سمت Server مطرح است ، هدف که True و false نیست . هدف PostBack است . حتی اگر True و false ی هم درکار باشد ، به خاطر روشن شدن قضیه ی PostBack است.

گفتید :


در ضمن توی یک دکمه ممکن چند بار بخواهم از این نمایش پیغام استفاده کنم

اون برنامه ی دومی که برایتان فرستادم ، به هیچ عنوان این قضیه را نقض نمی کرد. توی اون برنامه براحتی می توانستید حتی پیغام های متعددی را برای یک Button تعریف کنید.

گفتید:


من yes/no می خواهم.

البته همین برنامه ی دومی که برایتان فرستادم ، ok/canel بود . خوب این هم که خیلی شبیه به yes/no است . ولی به هر حال اگر yes/no برایتان خیلی مهم است ، من اسکریپت yes/no را بلد نیستم. حالا اگر کسی اسکریپت ساده ی yes/no در سمت جاوااسکریپت را دارد ، بفرستد تا من برنامه ی article را دوباره تنظیم کنم و برایش بفرستم.

--------------------------------------
یک مسئله ای رو می خواهم بگویم:
دوستان هر وقت دیدند ، حوصله شان از یک سوالی دارد ، سر می رود ، به طرف مقابل شک نکنند . به این دلیل که شاید واقعا جوابی که من و شما به آن طرف می دهیم ، جوابی نبوده که بتواند مشکل طرف را حل کند. شاید هم اشتباه فهمیدیم. طرف مقابل هم که ما را مجبور نکرده که جوابش را بدهیم.وقتی هم که طرف این همه پیگیری می کند ، مشخص است که قصد مغلطه کردن ندارد. پس یا جواب ندهیم ، یا اگر می دهیم ، با حوصله . یادتون نره که اگر بی منت به دیگران کمک کنید ، خدا خیلی بهتر از من و شما ، سایه ی رحمتش رو برامون پهن می کنه.

محمدامین شریفی
یک شنبه 17 آذر 1387, 06:11 صبح
ببینید من می خواهم پیغامی را که نمایش می دهد اگه دکمه yes را انتخاب کردم مقدار true برگردون یا اگه حالا no را انتخاب کردم مقدار false بر گردون
در ضمن توی یک دکمه ممکن چند بار بخواهم از این نمایش پیغام استفاده کنم
این مشکل من
تمام کدهایی که دادید خوب بود ولی این مشکل من حل نکرد
دوست من،مطمئن هستی اون پروژه را که واسط گذاشتم رو دیدی؟
با توجه به اینکه دوستان نمونه برنامه های گوناگون و خوبی را گذاشته اند،ادامه دادن این تاپیک بیهوده است.

article
یک شنبه 17 آذر 1387, 14:05 عصر
ببینید من می خواهم اگه دستور زیر را در یک رویداد اجرا کردم وقتی مثلا yes زدم مقدار بر گردانده بشه(true یا false) بتونم از مقدار بر گردانده شده استفاده کنم مثلا در این دستور مشکل من این وگرنه کد ها هیچ مشکلی نداره اتفاقا هم خیلی عالی ممنو از همه کسانی که در دادا این کدها و.. زحمت کشیدند
اما اگر کسی هست که می تون این مشکل حل کن خیلی از مشکلات من حل کرده
خدا خیرش بده

Button1.Attributes.Add("onclick", "My_alert('" + "Hello I am Server Component , but I Dont PostBack . Of Course If You Want PostBack , remove (return false) in Code Behind." + "'); return false;");
Button2.Attributes.Add("onclick", "if (My_confirm('" + "آیا از انجام این کار مطمئنید" + "')==false) return false;");

RoostaYeBekr
یک شنبه 17 آذر 1387, 19:44 عصر
ببینید من می خواهم اگه دستور زیر را در یک رویداد اجرا کردم وقتی مثلا yes زدم مقدار بر گردانده بشه(true یا false) بتونم از مقدار بر گردانده شده استفاده کنم مثلا در این دستور مشکل من این وگرنه کد ها هیچ مشکلی نداره اتفاقا هم خیلی عالی ممنو از همه کسانی که در دادا این کدها و.. زحمت کشیدند
اما اگر کسی هست که می تون این مشکل حل کن خیلی از مشکلات من حل کرده
خدا خیرش بده

Button1.Attributes.Add("onclick", "My_alert('" + "Hello I am Server Component , but I Dont PostBack . Of Course If You Want PostBack , remove (return false) in Code Behind." + "'); return false;");
Button2.Attributes.Add("onclick", "if (My_confirm('" + "آیا از انجام این کار مطمئنید" + "')==false) return false;");
با سلام
:لبخندساده:
شما این را به من بگو ، تا من هم بعدش رو بگم:
فرض کن این تکه کد من مقدار false یا true را برگرداند. دقیقا بگو که اگر مقدار false را برگرداند ، می خواهی چه کار کنی و اگر مقدار true را برگرداند ، می خواهی چه کار کنی ؟

mamizadeh
دوشنبه 26 اسفند 1387, 09:47 صبح
سلام



<%@RegisterTagPrefix="cc1"Namespace="BunnyBear"Assembly="msgBox" %>




<cc1:msgBoxid="MsgBox1"runat="server"></cc1:msgBox>





protectedvoid Button1_Click(object sender, EventArgs e)
{
MsgBox1.alert("Message box in asp.net");
MsgBox1.confirm("message box in asp.net ", "ok");
}


منبع : CodeProject.com


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