首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >从MVC中razor视图上的Ajax成功函数跳转/重新加载到同一页面

从MVC中razor视图上的Ajax成功函数跳转/重新加载到同一页面
EN

Stack Overflow用户
提问于 2019-05-23 04:36:09
回答 1查看 402关注 0票数 0

这是我的Ajax调用,我正在调用一个更新数据库的API,我希望在函数成功时重新加载页面。

代码语言:javascript
复制
 $("#Pendingbookings").on("click", ".AcceptBooking", function () {
                    var button = $(this);
                    bootbox.confirm("Are you sure you want to accept this booking?", function (result) {
                        if (result) {
                            var Booking = { BookingID: button.attr("data-BookingId") }
                            var url_redirect = '@Url.Action("GetBookingsByStatus", "Booking")';
                            $.ajax({
                                url: "/api/AcceptBooking/AcceptBooking",
                                method: "PUT",
                                data: Booking,
                                dataType: 'json',
                                success: function (response) {
                                    window.location.href = url_redirect;
                                }
                            });
                        }
                    });
                });

Ajax调用运行良好,数据会在数据库中更新,但它不会在成功调用时重新加载页面或调用操作方法

API接口

代码语言:javascript
复制
[HttpPut]
        public IHttpActionResult AcceptBooking(Booking BookingID)
        {
            //Write the function to update booking and accept it.
            if (!ModelState.IsValid)
            {
                return BadRequest();
            }

            int bookingID = BookingID.BookingID;

            var bookingInDB = _context.Booking.SingleOrDefault(c => c.BookingID == bookingID);

            if (bookingInDB == null)
            {
                return NotFound();
            }
            else
            {
                bookingInDB.BookingAccepted = true;
            }

            _context.Entry(bookingInDB).State = EntityState.Modified;

            _context.SaveChanges();

            return Ok();
        }
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-05-23 06:32:54

请尝试从ajax调用中删除dataType。

代码语言:javascript
复制
 $.ajax({
         url: "/api/AcceptBooking/AcceptBooking",
         method: "PUT",
         data: Booking,                    
         success: function (response) {
         window.location.href = url_redirect;
         }
        });
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56264635

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档