PDA

View Full Version : سوال: خطا در اجرای MsgBox



my_blithe
یک شنبه 10 شهریور 1387, 18:16 عصر
سلام

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



Showing a modal dialog box or form when the application is not running in UserInteractive mode is not a valid operation. Specify the ServiceNotification or DefaultDesktopOnly style to display a notification from a service application.

Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.

Exception Details: System.InvalidOperationException: Showing a modal dialog box or form when the application is not running in UserInteractive mode is not a valid operation. Specify the ServiceNotification or DefaultDesktopOnly style to display a notification from a service application.




Source Error:
Line 4:
Line 5: Protected Sub GridView1_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs ) Handles GridView1.RowCommand
Line 6: If MsgBox(" خبر را به طور کامل حذف می کنید ؟" _
Line 7: , MsgBoxStyle.Question + MsgBoxStyle.OkCancel + _Line 8: MsgBoxStyle.MsgBoxRight, ".....هشدار....") = MsgBoxResult.Ok Then

لطفا کمکم کنید....

merlin_vista
یک شنبه 10 شهریور 1387, 18:22 عصر
دوست عزيز ما در برنامه هاي تحت وب اطلاً MessageBox تحت سرور نداريم.

شما بايد از java و دستورات تحت كلاينت استفاده كنيد .

my_blithe
یک شنبه 10 شهریور 1387, 18:26 عصر
ولی توی سیستم خودم راحت اجرا میشه

ibd_iran
یک شنبه 10 شهریور 1387, 18:29 عصر
string message = "<script type='text/javascript'>"
+ "alert('پیام');"
+ "</script>";
Page.RegisterStartupScript("message", message);
ازاین کد استفاده کن

my_blithe
یک شنبه 10 شهریور 1387, 18:32 عصر
یعنی چطور استفاده کنم.

ببین قراره یک پیغام بیاد که توش ok و cancel داره. و با زدن هر کدوم یک کاری صورت بگیره.

merlin_vista
یک شنبه 10 شهریور 1387, 19:35 عصر
ببين دوست عزيز تو يه دفعه ميگي من پيغام ميخواهم يه دفعه ميگي confirm ميخام . تكليف خودت را معلوم كن .
اگه confirm اين كدش هست تو OnClientClick دكمت بنويس :

OnClientClick="return confirm('آيا براي ارسال اصلاعات مطمئن هستيد؟')"

اگه پيغام ميخواهي هماني هست كه دوستمون كدش را گزاشته .


ولی توی سیستم خودم راحت اجرا میشه

چون هم سرور سيستم خودت هست و هم كلاينت . (لوكال هستي ديگه ) .

IranVisual
دوشنبه 11 شهریور 1387, 08:08 صبح
در مورد confirm چجوری میشه تشخیص داد که دکمه ok یا cansec کلیک شده

eyes_shut_number1
دوشنبه 11 شهریور 1387, 08:20 صبح
ایندکس 0 یعنی cancel
ایندکس 1 یعنی ok


if (1== confirm("text"))
{/*
do some thing
*/}

merlin_vista
دوشنبه 11 شهریور 1387, 08:37 صبح
لازم به تشخيص شما نيست . خودش اين كار را انجام ميده . شما اگه اون كد را امتحان ميكرديد ميفهميديد .

اگه ok زده بشه خودش كدهايي را كه سمت سرور نوشتيد را اجرا ميكنه . اگه Cancel زده بشه خير

my_blithe
دوشنبه 11 شهریور 1387, 09:25 صبح
چون هم سرور سيستم خودت هست و هم كلاينت . (لوكال هستي ديگه ) .
یعنی چون خودم هم کانیتم هم سرور اجرا می شه!!!!

برام روشن نیست چرا ؟؟؟؟!!!!

میشه بیشتر توضیح بدید دلیلش چیه؟؟؟



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

milade
دوشنبه 11 شهریور 1387, 11:00 صبح
یعنی چون خودم هم کانیتم هم سرور اجرا می شه!!!!

برام روشن نیست چرا ؟؟؟؟!!!!

میشه بیشتر توضیح بدید دلیلش چیه؟؟؟

نگاه کن دوست عزیز بعضی کدها برای اینکه اجرا بشه باید حتما رویداد بره سرور و بیاد تا کدش رو بگیره یعنی شما هر وقت از این کدتون استفاده می کنید رویداد سمت سرور اجرا میشه
حالا این کدهایی که دوستان دادند برای اینه که نخواد رویداد سمت سرور اجرا بشه و سمت کلاینت اجرا بشه(فشار هم به سرور نیاد)

این کدی رو که دوستمون دادن توی رویداد کلیک قرار بدم؟؟؟
onclientclick
بای

Pouria.NET
دوشنبه 11 شهریور 1387, 16:08 عصر
این کد را کامل در یک صفحه ASP.NET قرار بده، ان شاء الله که مشکل حل شود




Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>

<!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>Untitled Page</title>
<script type="text/javascript">
function testing()
{
if(confirm("Are You Sure?")==1)
{
alert("you pressed OK");
} else {
alert("you pressed Cancel");
}
}

</script>
</head>
<body>
<form id="form1" runat="server">
<asp:Button runat="server" Text="Press Me" OnClientClick="testing();"/>
<div>

</div>
</form>
</body>
</html>

my_blithe
سه شنبه 12 شهریور 1387, 14:40 عصر
حالا من برای این که مثلا کدی که یک سطر از دیتابیسم رو حذف میکنه رو اجرا کنم چطور توی oncick بگنجونمش؟؟

milade
سه شنبه 12 شهریور 1387, 14:46 عصر
یعنی می خواید تحت کلاینت بنویسیدش؟(با جاوا اسکریپت؟)

my_blithe
سه شنبه 12 شهریور 1387, 15:31 عصر
مشکلم الان اینه که وقتی cancel یا ok میزنم. در هر دوحالت کد سمت سرورم اجرا میشه.

چرا؟؟؟

merlin_vista
سه شنبه 12 شهریور 1387, 17:20 عصر
مشکلم الان اینه که وقتی cancel یا ok میزنم. در هر دوحالت کد سمت سرورم اجرا میشه.

چرا؟؟؟

دوست عزيز بدون كد نميشه كاري كرد . كد ها را بگزار اين جا :چشمک:

milade
سه شنبه 12 شهریور 1387, 17:25 عصر
خوب کاری که نداره از کنترل اجاکس استفاده کن این کنترلش:


<cc1:ConfirmButtonExtender ID="ConfirmButtonExtender1" runat="server">
</cc1:ConfirmButtonExtender>

که به اون باتن به این صورت ربطش بده به این صورت:


<form id="form1" runat="server">
<div>

<cc1:ConfirmButtonExtender ConfirmText="ںیں êلêمë ى«¢ی§؟" ID="ConfirmButtonExtender1" runat="server"
TargetControlID="Button1">
</cc1:ConfirmButtonExtender>

</div>
<asp:Button ID="Button1" runat="server" Text="Button" />
</form>

در صورتی که کاربر باتن رو کلیک کرد مسجی نمایش می یابد که اگه ok کنه رویداد سرور دکمه باتن اجرا می شه
بای

merlin_vista
سه شنبه 12 شهریور 1387, 17:46 عصر
بابا اين همه كار نمي خواهد كه :

<asp:Button ID="Button1" runat="server" CssClass="FarsiText" Text="ارسال"
onclick="Button1_Click" Width="63px" OnClientClick="return confirm('آيا براي ارسال ايميل مطمئن هستيد؟')"/>

با اين كد در صورت زدن OK رويداد onclick="Button1_Click" اجرا ميشه !

my_blithe
پنج شنبه 14 شهریور 1387, 17:51 عصر
باConfirmButtonExtender به همون مشکل قبلی بر می خوریم یعنی در هر دو حالت واقعه اتفاق می افته ولی با AjaxModulePopop راحت انجام شد.