تاپیک مورد نظر بسته شده است
درود
از این مورد برای آپلود عکس کاربری استفاده میکنم ,
بعد از انجام کار در سمت کنترولر باید یک مقدار جیسون سه قسمتی رو به سمت 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 بنویسم اجرا میشه و مراحل رو هم دیباگ کردم و کل مراحل انجام میشه و تا آخرین خط در سمت کنترولر خونده میشه ولی تهش پیغامه نشون داده نمیشه.
لطفا راهنمایی کنید ؟
شما مقدار html را خالی گذاشتید خب معلومه که نمایش نمیده!
نه اون درسته , میخوام بعد پایان کار اون تگ که انتخاب شده 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("خطا!"); } }); });
به احتما 99% ناسازگاری با شیوه برگشت دادن JsonData() در سمت کنترولر هست .
شیوه دیگه ای برای برگشت دادن مقدار ودریافت مقدار در سمت View هست ؟
ممنون استاد مدائنی ,
من هم از مورد اول و دوم که معرفی کردید استفاده میکنم .
سینتکس نوشتاری رو به شیوه ای که شما نوشتید تغییر دادم مشکل حل شد.
JsonData MyJson = new JsonData { Success = true, Script = MessageBox.Show("عکس کاربری با موفقیت اپلود شد", MessageType.Success).Script }; return Json(MyJson);
هیچ کاربری تا کنون از این پست تشکر نکرده است
تاپیک مورد نظر بسته شده و امکان درج پاسخ وجود ندارد
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)