2014-10-30 1 views
0

My Controller являетсяЧастичный вид не refershing метод

public ActionResult Index(string id = "All") 
     { 
      ViewBag.RefType = new SelectList(rep.getReferenceType()); 
      List<Reference> reference = rep.getReference(id); 

      if (Request.IsAjaxRequest()) 
       return PartialView("_ReferenceList", reference); 
      else 
      { 
       ViewBag.domain = "All"; 
       return View(reference); 
      } 
     } 

Второй метод вызывает индексировать

public ActionResult EditReference(Reference rf, int Dom) 
     { 
      Reference rf1 = null; 
      string dom = ""; 
      if (ModelState.IsValid) 
      { 
       rf1 = rep.UpdateReference(rf); 
       if (Dom == 0) 
       { 
        dom = "All"; 
       } 
       else 
       { 
        dom = rf1.Domain; 
       } 
       return RedirectToAction("Index", new { id =dom}); 
      } 
      return View(rf1); 
     } 

и на мой взгляд

@using (Ajax.BeginForm("EditReference", "Reference", new AjaxOptions { HttpMethod = "POST", OnSuccess = "closeDialog()", LoadingElementId = "divLoading" })) 
{ 
    @Html.AntiForgeryToken() 
    @Html.ValidationSummary(true) 

    Html.RenderPartial("_Reference");  
} 

Проблема заключается в том, что новый отредактированный оленья кожа данных появляются, когда диалог закрыт ... Он отображает те же старые данные ... Я попробовал другую функцию

function closDlgAndRefresh{ 
$('.Dialog').dialog('close'); 
      $('.ddlRndrPrtl').val($('.ddlRndrPrtl').val()); 
      $('.ddlRndrPrtl').trigger('change'); 
} 

и когда я называю эту функцию OnSuccess он делает отображает данные, но функция Index вызывается дважды whic я не Ван делать ....... только когда функция Index вызывается из функции редактирования и 2 когда это выпадающий запускается ......

Любая помощь приветствуется ... Спасибо заранее ...

ответ

0

Понял фиксированной ....

Забыла добавить Обновлено TargetID в Ajax.BeginForm

@using (Ajax.BeginForm("EditReference", "Reference", new AjaxOptions { HttpMethod = "POST", LoadingElementId = "divLoading", InsertionMode = InsertionMode.Replace, UpdateTargetId = "DivTbl_Reference" })) 
{ 
    @Html.AntiForgeryToken() 
    @Html.ValidationSummary(true) 

    Html.RenderPartial("_Reference");  
} 

 Смежные вопросы

  • Нет связанных вопросов^_^