我在VS2013上有一個asp.net 4.5(C#)頁面。在這個頁面中,我使用循環來拋出一些對象。爲每個對象(產品)我有一個文本框(輸入與類型=文本框),我使用jquery使其成爲一個微調。asp頁面內的很多javascripts標籤使性能低下
我需要這個在每個產品的循環內,因爲我希望每個微調控制器都有來自對象的參數(最小,最大,步長,是十進制等)。
的循環將類似的東西:
foreach (Product product in getCart().ItemsList()) {
String spinnerId = "spinner_" + product.Code;%>
<input id="<%:spinnerId %>" name="<%:product.Code%>">
<script type="text/javascript" language="javascript">
setSpinner('<%:spinnerId%>','<%:product.min%>','<%:product.max%>','<%product.step%>');
</script>
<%}%>
,並在頁面的頭,我有:
function setSpinner(id,minVal,maxVal,stepVal){
j("#"+id).spinner({
min: minVal,
max: maxVal,
step: stepVal,
});
}
的問題是,當我有循環越過了幾次(10-15)頁面加載非常乾淨,「已準備就緒」函數需要幾秒鐘才能執行,這意味着需要隱藏的某些字段顯示爲2秒,且僅比disaperas顯示(這包括ajaxcontroltoolkit控件,如popupextender面板等)。
爲了簡單起見,JavaScript代碼本身並不重要。 如果您嘗試如下所示:
<%for (int i=0;i<100;i++){%>
<script type="text/javascript" lang="javascript">
</script>
<%}%>
發生同樣的問題。
它似乎即使是一個空的JavaScript塊,使頁面需要很長時間才能完成,如果你多次使用它。
爲什麼50 \ 100空的JavaScript塊使頁面滯後如此糟糕?以及我能做些什麼來解決這個問題,考慮到我必須對每個對象數據使用JavaScript代碼?
不知道。但它很醜,難以維護。在一個腳本塊內部做你的東西。 – roland
這並沒有解決任何這個問題。如何在一個區塊中爲每個產品(最小,最大,步長)製作具有不同數值的微調器? – Programer
你可以爲你想要做的事情創建一個jsfiddle,很難讀懂這個問題。 –