2016-03-31 30 views
0

Düğme tıklatıldığında, eylem yöntemi olarak adlandırılan js işlevi denir. Ancak json sonucu 0 ise (hata değil), kısmi görünüme yönlendirmek istiyorum. JS fonksiyonu: Kontrolajax çağrısının kısmi görünümü döndürme

function AssignButtonClicked(step, parent, show) { 
    alert("coming: " + step + " parent: " + parent + " show is : " + show); 

    $.ajax({ 

     type: "POST", 

     url: "/Jobs/PassInstructionTest", 

     data: "{stepGuid: '" + step + "', parentGuid: '" + parent + "'}", 

     contentType: "application/json; charset=utf-8", 

     dataType: "json", 

     success: function (response) { 

      alert("resp is : " + response); 
      if (response == '0') { 
       alert('qa called!'); 
       $("#forqa").show();     
      } 
      if (response == '1') { 

      } 
     }, 

     error: function (response) { 
      alert(response.responseText + " error for fail"); 
     }, 

    }); 
    return false; 
} 

Eylem yöntemi: MyPartialView çağrıldığında

public ActionResult PassInstructionTest(Guid stepGuid, Guid parentGuid, string show) 
{ 
    bool isQA = false; 
    if (!isQA) 
    { 
    return Json(0, JsonRequestBehavior.AllowGet); 
    } 
    else 
    { 
    return PartialView("MyPartialView"); 
    } 
} 

, bu hata yürütme çocuk istek olarak hata atıyor.

Lütfen bana çözümü verin.

+0

'isQA'ınız doğru olduğunda? – SeM

+0

Test etmek için yanlış olarak geçiyorum. QA doğruysa, bir Modal açılır penceresi açmak istiyorum, aksi halde dönüş kısmi görünümünü yürütün. kısmi görünüm deniyor ama onu yönlendirmiyor ve çocuk isteği yürütülürken hata atıyor. Javascript işlevini değiştirmem gerekiyor mu? –

+0

Ve bu tıklama etkinliği de .. –

cevap

0

Html'i dizeye dönüştürün, sonra bunu json olarak iletin.

public virtual string RenderPartialViewToString(string viewName, object model) 
    { 
     //Original source code: http://craftycodeblog.com/2010/05/15/asp-net-mvc-render-partial-view-to-string/ 
     if (string.IsNullOrEmpty(viewName)) 
      viewName = this.ControllerContext.RouteData.GetRequiredString("action"); 

     this.ViewData.Model = model; 

     using (var sw = new StringWriter()) 
     { 
      ViewEngineResult viewResult = System.Web.Mvc.ViewEngines.Engines.FindPartialView(this.ControllerContext, viewName); 


      var viewContext = new ViewContext(this.ControllerContext, viewResult.View, this.ViewData, this.TempData, sw); 
      viewResult.View.Render(viewContext, sw); 

      return sw.GetStringBuilder().ToString(); 
     } 
    } 



    public ActionResult PassInstructionTest(Guid stepGuid, Guid parentGuid,string show) 
    { 
    bool isQA = false; 
    if (!isQA) 
    { 
     return Json(0, JsonRequestBehavior.AllowGet); 
    } 
    else 
    { 
     return update_section = new 
      { 
      ShippingMethodUpdateHtml = this.RenderPartialViewToString("MyPartialView", null) 
      }, 
    } 
    } 
+0

update_section hata veriyor .. kısmi görüntüsünde yer alır Ve dönüş Json yargılandı (yeni { statusCode = 10, StatusMessage = "Kişi eklendi!", personHtml = RenderPartialViewToString ("LoadJob", treeView) }); Hata çocuk isteği yürütülürken hata atıyor ve yanıt uyarı ekranı olarak geliyor. –

+0

Ve bu tıklama olayı kısmi bir görünümde de var .. –

+0

Görebilir miyim Kod görüntüle? –

İlgili konular