我遇到了一些kendo對象,特別是按鈕,下拉列表和文本框的問題。我的情況是這樣的:我有一個部分視圖,加載一個零件列表和一個項目列表。每個項目都包含一個鏈接,該鏈接打開一個kendo窗口,加載部分或項目信息的局部視圖。所有部件共享一個窗口,但信息根據部件進行更新,所有項目共享一個窗口,所有信息根據項目進行更新。該窗口在包含部件列表的部分視圖上實例化,但在單擊零件/項目之前不可見。數據然後從一個單獨的局部視圖加載到窗口上,然後窗口打開。每個窗口都包含kendo按鈕,kendo文本框和kendo下拉列表。Kendo對象失去功能和樣式
第一次加載時,項目和部件鏈接都正常工作。他們繼續工作,直到用戶打開其他類型的鏈接,無論是部分還是項目。這兩個窗口然後停止運作。窗口打開,但是所有的kendo對象都失去了它們的功能。例如,一個下拉列表變成了一個文本框,一個按鈕呈藍色,並且該表格從CSS中丟失了它的樣式。我在這個項目中成功地多次使用kendo對象,所以我知道它有這個觀點。我檢查了窗口的名稱和ID以及窗口中的所有對象,都沒有共享。我也改變了部分視圖中的JavaScript函數的名稱(我知道這是不好的做法,但我從來沒有想出正確的方式)是彼此不同的。問題依然存在。
我沒有足夠的聲譽發佈圖片,和大多數的圖片託管網站被封鎖在工作,所以我不能發表任何助視器。
下面是其中一個窗口的代碼。
<div style="width:100%;text-align:center;">
<div style="display:inline-block; vertical-align:central">
<table>
<tr>
<td>
@Html.Kendo.Button.Name("test1").Content("Add Costs").Events(Sub(events) events.Click("enterActualInfo"))
</td>
<td>
@Html.Kendo.Button.Name("test2").Content("View Change History").Events(Sub(events) events.Click("showProjectHistory"))
</td>
<td>
@Html.Kendo.Button.Name("test3").Content("GPC/Target").Events(Sub(events) events.Click("addGPC"))
</td>
</tr>
</table>
</div>
</div>
這是打開窗戶
function sendProjInfo(projNum) {
var projectWindow = $("#custProjWindow").data("kendoWindow")
$.ajax({
type: "GET",
url: "@Url.Action("getCustProjInfo", "Home")",
data: { custProjNumber: projNum },
datatype: "html",
success: function (result) {
projectWindow.content(result).open()
}
})
}
//when a part number is clicked, open a new window that has thats part information
function sendPartInfo(partNumber) {
var partWindow = $("#partWindow").data("kendoWindow")
$.ajax({
type:"GET",
url: "@Url.Action("getPartInfo", "Home")",
data: {partNumber: partNumber},
datatype: "html",
success: function (result) {
partWindow.content(result).open();
}
})
}
,這裏是窗口的實例代碼。
@Html.Kendo.Window.Name("custProjWindow").Title("Edit Customer Project").Draggable.Resizable.Actions(Sub(actions) actions.Minimize.Maximize.Close()).Visible(False)
@Html.Kendo.Window.Name("partWindow").Title("Edit Part").Draggable.Resizable.Actions(Sub(actions) actions.Minimize.Maximize.Close()).Visible(False)
任何建議,非常感謝。如果能幫助解決問題,我很樂意發佈更多信息。提前致謝。
-Eric
感謝您的回覆!我不認爲這是一個問題,因爲它將新的信息重新加載到同一個窗口中。所以不會創建新的按鈕,只是對象的值正在改變。此外,只有在按順序打開和關閉一種類型的窗口時才能正常工作,只有在窗口類型交替時纔有效。 –