从控制器调用javascript函数

时间:2011-09-28 20:19:56

标签: javascript asp.net-mvc

我需要在Controller函数中调用JavaScript函数。 我的代码如下所示:

    [AcceptVerbs(HttpVerbs.Post)]
    public ActionResult Edit(DeviceLocation locationToEdit)
    {
        var originalLocation = (from m in _db.DeviceLocations
                                where m.Id == locationToEdit.Id
                                select m).First();

        if (!ModelState.IsValid)
            return View(originalLocation);

        _db.ApplyCurrentValues(originalLocation.EntityKey.EntitySetName, locationToEdit);
        _db.SaveChanges();

        Utility.mostRecentLocationUpdate = locationToEdit;

        /******************************************
        need to call updateMap() JavaScript function
        *******************************************/

        return RedirectToAction("Locations");
    }

谢谢!

2 个答案:

答案 0 :(得分:1)

  

我需要在数据库更改时更新地图。理想情况下,updateMap()应该是一个回调函数,当Location表中的行发生更改时,该函数会自动执行

您需要poll the server with Ajax,使用sockets(支持非常有限)或comet向服务器询问新数据。服务器不能随意发送数据。

答案 1 :(得分:0)

我建议调查SignalR。它允许你想要的那种功能,但遗憾的是它没有很好的文档,谷歌总是试图纠正你的搜索“信号”,这在尝试查找信息时很烦人。