Ajax.ActionLink работает один раз
Я делаю что-то сумасшедшее с ActionLink. Это работает один раз, а затем не будет обновлять DIV снова. Когда я отлаживаю его, код проходит через все, но изменения не отображаются в DIV.
@Ajax.ActionLink("Make/Model", "SortVehicle", "Exposure", new { an = agreementNumber, sortOrder = "make" }, new AjaxOptions() { UpdateTargetId = "VehicleScheduleEdit", InsertionMode=InsertionMode.Replace })
Код контроллера:
public ActionResult SortVehicle(int an, string sortOrder) { switch (sortOrder) { case "year": sortOrder = "VehicleSchedule.AutoYear"; break; case "make": sortOrder = "VehicleSchedule.MakeModel"; break; default: sortOrder = "VehicleSchedule.MakeModel"; break; } VehicleScheduleViewModel objVehicleModel = new VehicleScheduleViewModel(); ViewData["VehicleScheduleViewModel"] = objVehicleModel.GetVehicleScheduleSorted(an, sortOrder); return PartialView("_VehicleSchedule"); }
Получение данных:
public IEnumerable<VehicleScheduleViewModel> GetVehicleScheduleSorted(int agreementNumber, string sortOrder)
{
var dataVehicle = (from VehicleSchedule in trustDB.LicensedAutos
where VehicleSchedule.AgreementNumber == agreementNumber
orderby (sortOrder)
select new VehicleScheduleViewModel
{
RID = VehicleSchedule.RID,
MakeModel = VehicleSchedule.MakeModel,
IDNumber = VehicleSchedule.IDNumber,
Location = VehicleSchedule.Location,
AutoYear = VehicleSchedule.AutoYear,
AutoValue = (double?)VehicleSchedule.AutoValue ?? 0,
YearAddedtoDistrict = (DateTime?)VehicleSchedule.YearAddedtoDistrict ?? DateTime.Now,
NumOfPassengers = (int?)VehicleSchedule.NumOfPassengers ?? 0,
DistVehNo = VehicleSchedule.DistVehNo,
NoCollision = VehicleSchedule.NoCollision,
NoComp = VehicleSchedule.NoComp,
InvalidVIN = VehicleSchedule.InvalidVIN,
AgreementNumber = (float?)VehicleSchedule.AgreementNumber ?? 0
});
return dataVehicle;
}
1 ответ
Вы должны убедиться, что ваш UpdateTargetId = VehicleScheduleEdit указывает на соответствующий идентификатор элемента div, который вы хотите обновить.
Вам также необходимо убедиться, что ваш PartialView находится внутри этого элемента div, а не что элемент div является частью вашего PartialView.