如何用JavaScript重新加载div?

时间:2014-01-10 16:40:36

标签: javascript jquery html asp.net css

我有JavaScript功能:

function notificationDivPressed(element,userId,numberOfUsers) {
$.ajax({
        url: '/Notification/ChangeReadStatus',
        type: "POST", cache: false,
        data: { arg: userId },
        success: function (data) {
            $('#NotificationsContainer').html(data);
        }
    });
}

有NotificationsContainer' DIV:

<div id="NotificationsContainer" class="NotivicationsContainerHeader">
  <span>თქვენ გაქვთ <span>@ViewBag.NewMessages</span> ახალი შეტყობინება</span>
</div>

这个JavaScript函数在数据库中进行了更改,并且还更改了ViewBag.NewMessages&#39;值。所以我想只刷新这个,而不是整页,并显示&#39; ViewBag.NewMessages&#39;

的新价值

我怎么能实现这个目标?

2 个答案:

答案 0 :(得分:1)

ViewBag对象继承了asp.net会话对象,无法从.net之外访问它。

答案 1 :(得分:1)

为此,使用ASP.NET语言在服务器端创建ViewBag.NewMessage的响应,并执行数据库查询,然后创建结果,然后data会有它的; ViewBag.NewMessage的价值。尝试将div更改为

<span class="viewbag">@ViewBag.NewMessages</span>

现在,只需将其更新为:

success: function (data) {
  $('.viewbag').html(data);
}

这样,只有ViewBag的跨度才会更新,而不是整个页面。

因此,当ajax提供一些值时,它将用新的值替换当前值,并且您将在成功时在页面上写入该ViewBag的新值。