2013-02-17 46 views
0

我想通过mvc4 \ EF5中的javascript异步更新数据库中的记录。
所以,我有js对象Id, StartDate, EndDate。我应该渲染隐藏的编辑表单,粘贴值并提交表单?有更容易的方法吗?我可以添加一个智能动作到控制器,这将允许我编辑记录。 (AFAIK,通过GET编辑记录是不安全的)。
*我正在使用fullcalendar,并且希望在计划事件调整大小时向数据库发送更新。在MVC4中通过JavaScript更新记录的正确方法

+0

jQuery有一个'.post()'方法内置在:http://api.jquery.com/jQuery.post/ – 2013-02-17 07:21:33

回答

0

您可以用下面的代码编辑对象:

function onUpdate(event) { 
    $.post(
     '@Url.Action("Update")', 
     { id: event.id, startdate: event.start, enddate: event.end } 
    ).done(function() { 
     alert('Update success'); 
    }); 
} 

你也应该避免通过GET请求处理数据。考虑到有人会通过缩小的链接向你发送电子邮件(因此你不知道它是什么),编辑你的记录并点击它。为了防止这个添加到你的行为HttpPost属性并考虑使用AntiForgeryToken

+0

感谢您的答案。当我这样做时,它将空值发布到我的控制器中。 (日期显示为01/01/0001) – user194076 2013-02-19 01:37:33

+0

您可以显示您的操作方法吗? – 2013-02-23 08:09:36