我有一個@ Ajax.ActionLink,我用它來刪除一個記錄形式我的數據庫。當我點擊鏈接時,我的頁面會要求確認,刪除課程並刷新包含記錄表的div。我想在jQuery中使用AJAX,而不是使用操作鏈接。當我點擊我的刪除按鈕,我得到我的確認框,點擊確定,然後沒有任何反應。我知道我的jquery函數正在從所選行中獲取正確的值,因爲我已將它們輸出以確保。我無法弄清楚爲什麼Ajax從不運行,但操作鏈接正常工作。下面是我的代碼和我的控制器AJAX Actionlink的作品,但我的AJAX在jQuery不? (ASP.NET MVC 5)
控制器:
public PartialViewResult deleteCourses(string stuId, string courseAbNum)
{
KuPlanEntities db = new KuPlanEntities();
var deleteCourse = (from course in db.COURSE_TAKEN
where course.courseAbNum == courseAbNum && course.Id == stuId
select course);
foreach (var course in deleteCourse)
{
db.COURSE_TAKEN.Remove(course);
db.SaveChanges();
}
var stuCourses = (from studCourse in db.COURSE_TAKEN
join course in db.COURSEs on studCourse.courseAbNum equals course.courseAbNum
where studCourse.Id == stuId
select new courseTakenView { Id = studCourse.Id, courseAbNum = studCourse.courseAbNum, status = studCourse.status, grade = studCourse.grade, courseDesc = course.courseDesc, credits = course.credits, rowNum = studCourse.rowNum });
var model = new courseListViewModel
{
userId = stuId,
courseTaken = stuCourses
};
return PartialView("~/Views/ManageStudentCourses/listCourseRefresh.cshtml",model);
}
動作鏈接:
@Ajax.ActionLink("Delete", "deleteCourses", new { stuId = Model.userId, courseAbNum = @course.courseAbNum }, new AjaxOptions { UpdateTargetId = "refreshList", Confirm = ("Are you sure you want to delete this course?") })
的jQuery:
$(document).ready(function() {
$('.deleteCourseBtn').click(function() {
if(confirm("Are you sure you want to delete this course?"))
{
var courseAbNum = $(this).attr('data-id');
var stuId = $('#userId').val();
$.ajax({
type: 'POST',
url: '/ManageStudentCourses/deleteCourses',
data: { stuId:stuId, courseAbNum:courseAbNum },
dataType: 'html'
.success(function (result) {
$('#refreshList').html(result);
})
});
}
else
{
return false;
}
})
});
你檢查你的瀏覽器控制檯是否有錯誤或看到請求是否應該看起來像? – 2014-10-29 20:12:00
它表示Uncaught TypeError:undefined不是函數。 「.success(函數(結果){」行突出顯示 – Stc5097 2014-10-29 20:17:03