1

我是 MVC 的新手。如何在弹出的 MVC3 razor 中编辑数据。我看了很多,但没有得到它。我正在使用 jquery。我的控制器-

[HttpGet]
    public ActionResult Edit(int id)
    {

        var q = from p in db.accs
                where p.id == id
                select p;
        return View(q.FirstOrDefault());
    }
    [HttpPost]
    public ActionResult Edit(int id,account ac)
    {
        acc a = (from p in db.accs
                     where p.id==id
                     select p).Single();

        if (ModelState.IsValid)
        {
            a.f_name = ac.f_name;
            a.l_name = ac.l_name;
            a.Address = ac.Address;
            a.Phoneno = ac.Phoneno;
            db.SubmitChanges();
            int i = 2;
            return RedirectToAction("Display", new { i = i });
        }
        else
        {
            return View("Edit");
        }
4

2 回答 2

2

您可以查看jQuery UI 对话框组件,它允许您实现这一点。

于 2012-06-28T08:06:05.217 回答
1

您将不得不使用可以返回部分视图的 Ajax.ActionLink,然后将该结果添加到 div 中,然后 OnSuccess 显示该部分视图。


 @Ajax.ActionLink("popup", "SomeAction", new AjaxOptions { HttpMethod = "GET", UpdateTargetId = "result",     InsertionMode = InsertionMode.Replace, OnSuccess="openPopup" })<br />

   <div id="result" style="display:none;"></div>

   <script type="text/javascript">
       $(document).ready(function() {
          $("#result").dialog({
             autoOpen: false,
               title: 'Title',
              width: 500,
             height: 'auto',
            modal: true
        });
   });
       function openPopup() {
         $("#result").dialog("open");
}

于 2012-06-28T08:15:01.337 回答