مرجع تخصصی برنامه نویسان

انجمن تخصصی برنامه نویسان فارسی زبان

تاپیک مورد نظر بسته شده است

کاربر سایت

alibahman47

عضویت از 1395/11/13

برگشت مقدار Json به سمت View در درخواست ایجکسی

  • پنجشنبه 16 شهریور 1396
  • 16:54
تشکر میکنم

درود

از این مورد برای آپلود عکس کاربری استفاده میکنم ,

بعد از انجام کار در سمت کنترولر باید یک مقدار جیسون سه قسمتی رو به سمت View برگشت بدم .


                    // بروز کردن جدول
                    if (Bl_Users.Update(UserProfile))
                    {
                        return Json(new JsonData()
                        {                 
                            Success = true,
                            Script = MessageBox.Show("عکس کاربری با موفقیت آپلود شد", MessageType.Success).Script,
                            Html = ""
                        });
                    }
                    else
                    {
                        return Json(new JsonData()
                        {
                            Success = false,
                            Script = MessageBox.Show("خطا در اپلود" , MessageType.Warning).Script,
                            Html = ""
                        });
                    }



برای دریافت در سمت View به شکل زیر کد رو نوشتم ولی متاسفانه هیچ پیغامی نشون داده نمیشه.


از jquery-3.2.1.js و jquery.form-4.2.2.js استفاده میکنم !

سینتکس کلی درسته و در حالتی که مقدار Json رو برگشت ندم وچیزی هایی که درون تابع Success بنویسم اجرا میشه و مراحل رو هم دیباگ کردم و کل مراحل انجام میشه و تا آخرین خط در سمت کنترولر خونده میشه ولی تهش پیغامه نشون داده نمیشه.

لطفا راهنمایی کنید ؟

پاسخ های این پرسش

تعداد پاسخ ها : 5 پاسخ
کاربر سایت

سهیل علیزاده

عضویت از 1396/04/09

  • پنجشنبه 16 شهریور 1396
  • 17:33

شما مقدار html را خالی گذاشتید خب معلومه که نمایش نمیده!

کاربر سایت

alibahman47

عضویت از 1395/11/13

  • پنجشنبه 16 شهریور 1396
  • 17:52

نه اون درسته , میخوام بعد پایان کار اون تگ که انتخاب شده htmlش پاک بشه !

خط  379 باید اون متنی که درون Script نوشتم رو بصورت پیغام تصویری در صفحه نمایش بده !

همین کار رو در خیلی از جاهای پروژه انجام دادم و بخوبی کار میکنه

$(".deleteProduct").click(function () {
    var id = $(this).attr("productid");
    var img = $(this);
    $.ajax({
        url: "/ShppingCart/RemoveCart",
        data: { Id: id },
        type: "Post",
        dataType: "Json",
        success: function (result) {
            if (result.Success) {
                $(".CartItems").html(result.Html);
            }
            eval(result.Script);
        },
        error: function () {
            alert("خطا!");
        }
    });
});

کاربر سایت

alibahman47

عضویت از 1395/11/13

  • پنجشنبه 16 شهریور 1396
  • 18:32

به احتما 99% ناسازگاری با شیوه برگشت دادن JsonData() در سمت کنترولر هست .

شیوه دیگه ای برای برگشت دادن مقدار ودریافت مقدار در سمت View هست ؟

کاربر سایت

alibahman47

عضویت از 1395/11/13

  • جمعه 17 شهریور 1396
  • 15:16

ممنون استاد  مدائنی  ,

من هم از مورد اول و دوم که معرفی کردید استفاده میکنم .

سینتکس نوشتاری رو به شیوه ای که شما نوشتید تغییر دادم مشکل حل شد.

JsonData MyJson = new JsonData
                        {
                            Success = true,
                            Script = MessageBox.Show("عکس کاربری با موفقیت اپلود شد", MessageType.Success).Script
                        };
                        return Json(MyJson);

کاربرانی که از این پست تشکر کرده اند

هیچ کاربری تا کنون از این پست تشکر نکرده است

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

اگر نیاز به یک مشاور در زمینه طراحی سایت ، برنامه نویسی و بازاریابی الکترونیکی دارید

با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)