This question already has an answer here:
- Partial Views on mvc create view that use a dropdown list to populate the partial view's view bag is this possible in mvc? 2 answers
- Refresh Partial View Div in MVC 5 1 answer
greeting again guys. First I have read over 20 post on this topic and at least 15 none stake exchange links as well as asked 5 question of my own regarding this.
First I just want to know can mvc populate a partial view with dynamic data while in the create view? If not then what I suspected was correct. This can only be down in webforms and I can drop this mvc app and just use webforms.
If it can can some one please show how to do this. Again here is everything that I have.
stating with the partial view code called
_PartVue that is stored in the shared folder of the mvc code behind folders this part view was build using the wizard
<table cellpadding="1" border="1">
<tr>
<th>
Field1
</th>
<th>
Field2
</th>
<th>
Field3
</th>
</tr>
@foreach (System.Models.DATA_LIST item in @ViewBag.List)
{
<tr>
<td>
@item.F1
</td>
<td>
@item.F2
</td>
<td>
@item.F3
</td>
</tr>
}
</table>
In the Create View
This is where in the form that I want the partial view to show up on the create form
<div class="col-sm-6">
<div class="form-horizontal" style="display:none" id="PV_List">
@{ Html.RenderAction("ShowList",);}
</div>
</div>
The java script code in the create view for the list to show after a drop down view is changed
$(document).ready(function () {
$('#RES_ID').change(function ()
{
debugger;
$.get('~/Views/Shared/_PartVue.cshtml', { VID: $(this).val() }, function (data) { $('#PV_List').html(data); });
$("#PV_List").show(); // Shows Partial View
});
}
in the controller I have a function that makes a list and a function that uses something called return PartialView:
[HttpGet]
public ActionResult ShowList(int? VID)
{
ViewBag.DataList = Get_List(VID);
return PartialView("~/Views/Shared/_PartVue.cshtml",ViewBag.DataList);
}
Also the Get List function that populates the view bag data
private List<LIST_DATA> GET_List(int? VID)
{
return db.LIST_DATA.Where(i => i.ID == VID).ToList();
}
What I get on the create from are the fields but with no data. WHen is step into the code behhind I see that the right data is selected but it does not go no the partial view form.
Here is what I get.
In the google browser I get the following error: http://localhost:50296/PrograX/~/Views/Shared/_PartVue.cshtml?VID=808 Failed to load resource: the server responded with a status of 403 (Forbidden)
This partial view is in the shared folder... so is mvc telling me thatit can't populate a partial view with dynamic data and that I need to use webforms instead of trying to use mvc?
thanks so much again. Hopefully this question better explain what it is I am trying to do and maybe I can get better guidance letting me know that it is not possible and that it can't be done in this platform. Thanks