首先,我確定我缺少導航並加載部分視圖的最佳實踐方式。所以,如果我以錯誤的方式去解決這個問題,請告訴我。我有一種感覺,我會讓它變得比它需要的更困難。顯示部分視圖時的運行代碼
我想要完成的是讓我的網站表現得像一個單一的頁面應用程序。爲了做到這一點,我在div中有很多部分視圖。我隱藏所有div,但是活動的。我不知道如何在部分視圖中僅在顯示時運行代碼。
下面是我在這種情況下關注(這是Index.cshtml)div和局部視圖:
<div id="app">
@Html.Partial("~/Views/PartialViews/App.cshtml")
</div>
這是顯示的JavaScript局部視圖(也是在指數.cshtml):
function showApp(id) {
hideAll();
$('#txtAppId').val(id); // This is how I'm passing data to the partial view
$('#app').show();
}
這種運作良好(至少就呈現局部視圖),但我怎麼能得到代碼App.cshtml只有當它是這個樣子運行?
在App.cshtml(局部視圖):
<script>
$(function() {
// Note: This will execute as soon as the main page is loaded. I don't want
// code to execute right away, but only when this view is shown.
});
function doSomething() {
// Only when this view is shown do I want code to execute here.
}
</script>
怎樣纔可以有doSomething()
運行中示出了部分視圖時?
您可以在局部視圖結束時調用此函數,而不是「主」視圖。 –
而且,這不是一個SPA,你知道,對吧? –
在局部視圖結束時調用該函數?我不明白。只要它不是一個真正的SPA,我對此沒有問題,因爲那不是我的目標。這種方法怎麼樣並沒有使它成爲SPA?例如, –