استفاده از Sweet Alert برای نمایش پیغام گرافیکی در Asp.net Core
سلام وقت بخیر.
میخواستم از Sweet Alert در پروژم استفاده کنم ممنون میشم راهنماییم کنید و اینکه کجاها باید کد جاوااسکریپت بنویسم و چطوری در controller بگم بعد از عملیات پیغام رو نشون بده. با تشکر.
پاسخ هوش مصنوعی
برای استفاده از Sweet Alert در پروژه ASP.NET Core خود، مراحل زیر را دنبال کنید:
1. ابتدا باید کتابخانه Sweet Alert را به پروژه خود اضافه کنید. می توانید از CDN استفاده کنید. به فایل _Layout.cshtml
خود رفته و لینک های زیر را در قسمت <head>
اضافه کنید:
2. در کنترلر خود، بعد از انجام عملیات مورد نظر (مثلاً ذخیره سازی در پایگاه داده)، می توانید یک پیام را به View ارسال کنید. برای این کار می توانید از TempData
استفاده کنید:
public IActionResult SaveData(MyModel model)
{
// عملیات ذخیره سازی
TempData["message"] = "عملیات با موفقیت انجام شد!";
return RedirectToAction("Index");
}
3. سپس در View خود، می توانید کد جاوااسکریپت زیر را برای بررسی وجود پیام و نمایش آن با Sweet Alert اضافه کنید:
این کد در زمان بارگزاری صفحه بررسی می کند که آیا پیامی در TempData
وجود دارد یا خیر و در صورت وجود، آن را با Sweet Alert نمایش می دهد.
نمایش پیغام در وب توسط جاوا اسکریپت انجام میشه و جاوااسکریپت هم سمت کلاینت هست. یعنی ارتباطی با کنترلر نداره. برای استفاده از Sweet Alert مراحل زیر رو انجام بدید:
- ابتدا باید این پلاگین رو دانلود کنید. (لینک دانلود Sweet Alert)
- بعد از دانلود پلاگین اون رو در پوشه wwwroot --> lib از پروژه قرار بدید.
- خب حالا در کنترلر Home و ویو Index قرار بگیرید. در بالای ویو باید فایل های css و در پایین هم فایل های جاوا اسکریپت مربوط به پلاگین رو اضافه کنید.
- یک تگ Button در داخل تگ div قرار میدید و id اون رو برابر با btnsweet بذارید.
- یک تگ div هم با id برابر با divmsg قرار بدید.
- خب حالا میخوایم وقتی روی دکمه کلیک شد اطلاعات به سمت سرور بره و بعد از انجام عملیات در سرور یک پیغام نمایش داده بشه و همچنین بعد از اینکه پیغام هم نمایش داده شد یه سری عملیات انجام بدیم. برای ارسال اطلاعات به سمت سرور از Ajax باید استفاده کنید.
در انتهای ویوی شما باید به این شکل باشه :
<link href="~/lib/sweetalert/sweetalert2.min.css" rel="stylesheet" />
<div class="container">
<button id="btnsweet" class="btn">
Click Me ...
</button>
<div class="alert" id="divmsg">
</div>
</div>
@section Scripts{
<script src="~/lib/sweetalert/sweetalert2.min.js"></script>
<script>
$("#btnsweet").on('click', function (e) {
e.preventDefault();
$.ajax({
type: 'POST',
url: '@Url.Action("InsertDB", "Home")',
}).done(function (res) {
if (res.status === 'ok') {
swal({
title: "ثبت اطلاعات!!",
text: "اطلاعات ثبت شد",
type: 'success',
showCancelButton: false,
allowOutsideClick: false,
confirmButtonColor: "green",
confirmButtonText: "باشه"
}).then(function () {
$("#divmsg").text('عالی بود');
});
}
});
});
</script>
}
سورس پروژه هم براتون میذارم . کافیه فقط پروژه رو ران کنید و روی دکمه کلیک کنید.
- آموزش استفاده از پلاگین گردونه شانس در Asp.net core به همراه سورس
- نمایش متن به صورت فرمت شده در CkEditor
- آموزش استفاده از SignalR در Asp.net Core با مثال عملی
- ادغام چند گزارش استیمول سافت بصورت پی دی اف در یک فایل
- نحوه تغییر استایل کامپوننت select2 چگونه است ؟
- چگونه امنیت پروژه را در Asp.net Core افزایش دهیم ؟
- ارسال پارامتر در دستور window.open جی کویری
- ارسال پارامتر از طریق جاوااسکریپت با کلیک روی تگ a
- خطای 500 زمان اجرا شدن پروژه روی هاست
- کویری نویسی در استیمول سافت جهت فیلتر اطلاعات
- کار با CkEditor با قابلیت آپلود عکس
- خطا در ایجاد migration در Asp.net core
- تفاوت های Asp.net core و Asp.net mvc چیه؟
- دلیل اسپم شدن ایمیل های ارسالی از سرور
- نحوه لایه بندی پروژه Core و اضافه کردن به IIS
- ارسال ایمیل در Asp.net core
- آیا میشه در mvc core از کامپونت استفاده کرد
- آپلود فایل در Asp.net core چگونه است؟
- حذف کامل یک رکورد در جدول ریلیشن شده
- اشکال در آپلود فایل ویدیو در mvc core 2