C#学习教程:在模态中加载模型仅一次有效到目前为止没有运气。我有一个模态视图和局部视图,在模态中呈现。单击表单中的按钮时,我会根据传递给控制器??的参数用数据填充部分视图。第一个很好,按钮调用控制器->控制器将模型传递给局部视图->模式打开,正确的数据在字段中。当我单击另一条记录上的按钮时,模式打开并显示旧数据。控制器没有被再次调用,所以数据没有被刷新。问题是,如果我用shift+f5刷新页面,它会再次运行一次。所以这似乎是一个缓存问题。到目前为止我已经尝试过-在我的控制器和方法中禁用缓存-调用javascript方法从我的模态中删除数据-使用其他类型的模态代码索引视图注册列表@Html.ActionLink("CreateNew","Create",null,new{@class="btnbtn-primarybtn-xs"})@Html.DisplayNameFor(model=>model.Date)@Html.DisplayNameFor(model=>model.Car.Kenteken)@Html.DisplayNameFor(model=>model.DepartureLocation)@Html.DisplayNameFor(model=>model.ArrivalLocation)@Html.DisplayNameFor(model=>model.Distance)@Html.DisplayNameFor(model=>model.Allowance)@foreach(模型中的变量项){@Html.DisplayFor(modelItem=>item.Date)@Html.DisplayFor(modelItem=>item.Car.Kenteken)@Html.DisplayFor(modelItem=>item.DepartureLocation)@Html.DisplayFor(modelItem=>item.ArrivalLocation)@Html.DisplayFor(modelItem=>item.Distance)@Html.DisplayFor(modelItem=>item.Allowance)@Html.ActionLink("Edit","Edit",new{id=item.CarId},new{@class="btnbtn-whitebtn-sm"})@Html.ActionLink("删除","删除",new{id=item.CarId},new{@class="btnbtn-whitebtn-sm"})@Html.ActionLink("Copy","CopyTripRegistrationModal","TripRegistration",new{registrationId=item.RegistrationID},new{@class="img-btn-addnotemodal-linkbtnbtn-whitebtn-sm"})}X使用Javascript$(function(){$('body').on('click','.modal-link',function(e){e.preventDefault();$(this).attr('data-target','#modal-container');$(this).attr('data-toggle','modal');});$('body').on('click','.modal-close-btn',function(){$('#modal-container').modal('hide');});调试器;$("#modal-container").on("hidden.bs.modal",function(){$(".modal-body").removeData();});});局视图@using(Html.BeginForm("Create","TripRegistration")){@Html.AntiForgeryToken()@Html.ValidationSummary(true)@Html.HiddenFor(model=>model.CarId)@Html.LabelFor(model=>model.Date,new{@class="control-labelcol-md-2"})@Html.EditorFor(model=>Model.Date,new{htmlAttributes=new{@class="form-control"}})@Html.ValidationMessageFor(model=>模型.Date)@Html.LabelFor(model=>model.DepartureLocation,new{@class="control-labelcol-md-2"})@Html.EditorFor(model=>model.DepartureLocation)@Html.ValidationMessageFor(model=>model.DepartureLocation)@Html.LabelFor(model=>model.DepartureZipcode,new{@class="control-labelcol-md-2"})@Html.EditorFor(model=>model.DepartureZipcode)@Html。ValidationMessageFor(model=>model.DepartureZipcode)@Html.LabelFor(model=>model.ArrivalLocation,new{@class="control-labelcol-md-2"})@Html.EditorFor(model=>model.ArrivalLocation)@Html.ValidationMessageFor(model=>model.ArrivalLocation)@Html.LabelFor(model=>model.ArrivalZipcode,new{@class="control-labelcol-md-2"})@Html.EditorFor(model=>模型.ArrivalZipcode)@Html.ValidationMessageFor(model=>model.ArrivalZipcode)@Html.LabelFor(model=>model.Distance,new{@class="control-labelcol-md-2"})@Html.EditorFor(model=>model.Distance)@Html.ValidationMessageFor(model=>model.Distance)关闭复制注册}ControllerAction[NoCache]publicPartialViewResultCopyTripRegistrationModal(intregistrationId){地图vartripAutoRegistration.VM=Mapper.Map(tripRegistration);返回PartialView("_CopyTripRegistration",tripRegistrationVM);我在控制器的顶部添加了“[OutputCache(Duration=0)]”我希望有人能帮助我!您可以明确地进行ajax调用并将其响应设置为模态主体。$(function(){$('body').on('click','.modal-link',function(e){e.preventDefault();$("#modal-container").remove();$.get($(this).attr("href"),function(data){$(''+data+'').modal();});});});这将适用于您所有的唯一网址。以上是C#学习教程:Loadingthemodelinthemodalcanonlyworkonce。分享的所有内容,如果对大家有用,需要进一步了解C#学习教程,希望大家多多关注——本文收集自网络,不代表立场,如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
