Partial View not rendered from controller? WHY?
这是根据我的问题:
如何将从jQuery创建的数组传递给控制器??方法?
这是我的控制器返回局部视图:
1 2 3 4 5 | public ActionResult PartialViewChild(int id) { //stmts /*model is assigned here */ return PartialView("ChildPartialView", model); } |
我现在的问题是,从我的控制器操作返回的视图不是由
1 2 3 4 5 6 7 8 9 10 11 12 | var id=currentSelected.Id; $.ajax({ url:"@(Url.Action("PartialViewChild","ControllerChild")", type:"POST", data: JSON.stringify({id : id}), cache: false, success: function (result) { $("#id1").html(result); }, error: function (data, errorThrown) { alert('request failed :' + errorThrown); }}); |
我还发现,id为"id1"的div必须为空才能正确呈现局部视图。但是,开始时的div会呈现一个像EmptyView的那样,
1 | @{Html.RenderPartial("ChildPartialView", new ChildPartialModel());} |
并且基于ajax调用,我想用返回的结果填充该div(现在所有的属性都有值)..
但是,不幸的是,在这里我只是从ajax调用中得到错误警告:()告诉我有一个"解析错误"。
有人能告诉我怎么纠正它?
编辑:
这是我的部分视图:
1 2 3 4 5 6 | @model Models.ChildColumnsModel <span>@Html.LabelFor(c => c.Phone_Number):</span> <span>@Html.TextBoxFor(c=> c.Phone_Number)</span> // like this it has all its attributes... |
在我的控制器中:
1 2 3 4 5 | public PartialViewResult PartialViewChild(int id) { var model=child.GetReletedInfo(id); /*proper results are returned here which is of ChildColumnsModel type */ return PartialView("ChildPartialView", model); } |
抱歉所有......我解决了这个问题。 我有一个额外的属性为ajax告诉它的dataType:"Json"......当我删除它时,一切都很精细..我自己多么愚蠢..?!! 谢谢大家的有价值的答案和时间朋友..
编辑:
试试这个:
1 2 3 4 5 6 | [HttpPost] public ActionResult ChildPartialView(int id) { //stmts /*model is assigned here */ return PartialView(model); } |