頁面的底部是'理想'。然而,至於分開的文件。這只是將是隻要實際的,因爲你不從頁面引用asp.net元素 - 即:
<asp:Content ContentPlaceHolderID="jsCode" ID="jsCode1" runat="server">
<script type="text/javascript">
$(document).ready(function() {
getPoundsData();
});
function getPoundsData() {
var id = $("#ID").val();
var URL = '<%=Url.Action("GetPounds", "FundShareholder")%>';
var params = { id: id };
if (id != null)
SendAjaxCache("#" + $("#ShareholderID option:selected").text() + " RSP#", URL, params, null, ListDataShareholderPounds);
}
function ListDataShareholderPounds(data) {
if (data.length != 0) {
$('#shareholderPounds').html("");
$('#shareholderPounds').show();
$('#shareholderPounds').html(data);
}
};
</script>
</asp:Content>
通知:在js
var URL = '<%=Url.Action("GetPounds", "FundShareholder")%>';
一部分。我們做什麼是將內容部分添加到最底層的母版頁中以保存我們的js內容。但是,這隻適用於ViewPage(aspx)對象內部。 ascx頁面對主頁面內容部分「無知」。
我們目前正致力於系統化這個過程,在這個過程中,我們用asp.net引用保存'partial'js文件,然後通過filterattribute將它們注入到頁面流中。我們處於早期階段,但這種方法的好處在於,部分js被視爲文件,因此被緩存以供將來訪問該頁面。
無論如何,這是我們目前的方法,將有興趣發現如果窺視使用任何類似的機制來注入包含asp.net對象引用的js。
歡呼聲......
[編輯] - 這裏有一個擡起頭來對我說的(這不是我們的最初靈感的方法,但頗爲相似,壽是web表單,而不是mvc) - http://www.west-wind.com/WebLog/posts/252178.aspx或這是哪一個是mvc:http://poundingcode.blogspot.com/2009/12/injecting-javasript-into-aspnetmvc-with.html。 終於找到了啓發我們'搜索'的文章:ASP.NET MVC routing and paths is js files加http://codepaste.net/p2s3po