حذف و اضافه و نمایش با Ajax – در آموزش های قبلی با ساختار کلی آژاکس و نحوه درج اطلاعات یک فرم و ارسال و دریافت Json آشنا شدیم در این آموزش به رویداد های حذف و اضافه و نمایش اطلاعات خواهیم پرداخت.
مواردی که در قسمت های قبل درباره Ajax یاد گرفتیم :
همچنین میتوانید برای مشاهده تمام قسمت های آموزش Ajax در ASP.NET MVC 5 اینجا کلیک کنید.
$("#MyForm").submit(function (e) {
e.preventDefault();
var name= $('#Name').val();
var password= $('#Password').val();
var family = $('#Family').val();
var token = $('[name="__RequestVerificationToken"]').val();
if ($("#MyForm").valid()){
$.ajax({
url: '/DeleteUser/Index',
type: 'POST',
dataType: 'json',
data: { __RequestVerificationToken: token, Name: name, Family: family, Password: password },
success: function (data) {
if (data['success'] == true) {
ClearList();
RefreshList();
} else {
alert('error1');
}
},
error: function () {
alert("erroe2");
}
});
}
});
public ActionResult Index()
{
return View();
}
[HttpPost]
[ValidateAntiForgeryToken]
public JsonResult Index([Bind(Include = "Name,Family,Password")] User user)
{
if (ModelState.IsValid)
{
db.Users.Add(user);
db.SaveChanges();
return Json(new { success = true, JsonRequestBehavior.AllowGet });
}
return Json(new { success = false, JsonRequestBehavior.AllowGet });
}
function MyDelete(id) {
var token = $('[name="__RequestVerificationToken"]').val();
$.ajax({
url: '/DeleteUser/Delete',
type: 'POST',
dataType: 'Json',
data: { __RequestVerificationToken: token, id: id },
success: function (data) {
if (data['success']=true) {
RefreshList();
} else {
alert('error');
}
},
error: function () {
alert('error');
}
});
}
[HttpPost]
[ValidateAntiForgeryToken]
public JsonResult Delete(int ? id) {
if (id == null)
{
return Json(new { success = false, JsonRequestBehavior.AllowGet });
}
var user=db.Users.Find(id);
if (user == null)
{
return Json(new { success = false, JsonRequestBehavior.AllowGet });
}
db.Users.Remove(user);
db.SaveChanges();
return Json(new { success = true,JsonRequestBehavior.AllowGet });
}
function RefreshList() {
$.ajax({
url: '/DeleteUser/ShowUserList',
type: 'POST',
success: function (data) {
$('#MyList').html(data);
}
});
}
public ActionResult ShowList()
{
var user=db.Users.ToList();
return PartialView(user);
}
public ActionResult ShowUserList()
{
return RedirectToAction("ShowList");
}
باید بگوییم که Ajax به ما کمک میکند بدون بارگذاری کل صفحه (Refresh) محتوای بخشی از آن را بروزرسانی (Update) کنیم. استفاده از Ajax هم به نفع کاربران است و هم به نفع صاحبان سایت. کاربر دیگر لازم نیست مدت زمان زیادی منتظر بارگذاری کامل صفحه بماند و در پهنای باند او نیز صرفه جویی میشود. در مقابل صاحب سایت هم برنده است چون با ارائه یک تکنولوژی جدید و بسیار کاربردی میتواند مشتریان بیشتر و سرویسدهی بهتری داشته باشد.
با سلام چرا وقتی سطری از جدول را از طریق فرم ثبت میکنیم آی دی از ۱۰۰۲ ذخیره میشه ولی وقتی از داخل خود دیتابیس ذخیره میکنیم آی دی از شماره یک ۱ ذخیر میشه؟