我有一個KendoUI網格,返回一些數據,我有一個'.clienttemplate'內的一個按鈕綁定到數據ID。當你點擊該鏈接時,它使用Bootstrap 3模式顯示部分視圖。問題是,儘管ID是全部爲不同的我總是得到相同的結果反饋(通常你點擊了when的第一個ID,他的頁面加載)引導模式和MVC部分視圖
查看
@(Html.Kendo().Grid<Kendo_Range_Test.ViewModels.VesselViewModel>()
.Name("Grid")
.Columns(columns =>
{
columns.Bound(c => c.owner_company);
columns.Bound(c => c.vessel_name);
columns.Bound(c => c.vessel_type);
columns.Bound(c => c.fixture_stop);
columns.Bound(c => c.fixture_location);
columns.Bound(c => c.fixture_note);
columns.Bound(c => c.vessel_status);
columns.Command(command => { command.Edit(); }).Width(180);
columns.Bound(c => c.vessel_idx)
.ClientTemplate(
"<a data-identity='#=vessel_idx#' data-toggle='modal' data-target='\\#myModal' href='" + Url.Action("VesselModal", "BrokerHome") + "/#=vessel_idx #'" + ">Vessel</a>");
}
)
.Editable(editable => editable.Mode(GridEditMode.InLine))
.Pageable()
.Reorderable(reorder => reorder.Columns(true))
.DataSource(dataSource => dataSource
.Ajax()
.PageSize(40)
.Model(model =>
{
model.Id(p => p.vessel_idx);
})
.Read(read => read.Action("vessels_Read", "BrokerHome"))
.Update(update => update.Action("vessels_Update", "BrokerHome"))
)
)
控制器
public ActionResult VesselModal(int? id)
{
var vessel = db.tbl_vessels.Find(id.Value);
var vm = Mapper.Map<VesselViewModel>(vessel);
return PartialView("_VesselDetails", vm);
}
我注意到的是,當我申請索姆這個控制器方法的斷點只會被調用一次,而不會再一次,這就是爲什麼結果總是在模態中相同的原因。我可以做些什麼來確保它對每個點擊項目的方法進行新的調用,或者我應該以另一種方式做這種模式?
非常感謝
您好,我想這些了。您可以訪問節目並隱藏事件。我嘗試添加$('#myModal')。('hidden.bs.modal',function(event){$ .ajaxSetup({cache:false})}}但它沒有幫助。你遇到同樣的問題。 – Yanayaya
試試在你提到的ajaxSetup之前加入我在答案中提到的兩條線 –
謝謝,所以我添加了這些行,它們只允許你添加一個模態。然後它不會再打開。我刪除了$('#myModal')。html(「」);並離開克隆線,讓您打開一些數據項然後開始再次顯示相同的數據。感覺就像它幾乎在那裏。 – Yanayaya