2013-11-14 48 views
0

我與下面的代碼嘗試,但它與錯誤而失敗:未捕獲的SyntaxError:意外的標識,就行了:的javascript:未捕獲的SyntaxError:意外的標識

$.get("commonCore/templates/" + data[i].templateHtml ,function(html) 

有人可以幫我調試它。我非常新的JavaScript和jQuery

JSON:

[{"templateHtml":"dashBoardLeftInsight.html","classSelect":"leftpanel"},{"templateHtml":"dcdcsFilterOptions.html","classSelect":"dcdcsOptions"},{"templateHtml":"advanceFilterOptions.html","classSelect":"advancedOptions"},{"templateHtml":"reportFilterOptions.html","classSelect":"reportdashboard"}] 

代碼:

$.getJSON('api/filterTemplate/dashboard',function (data){ 

      var a = new Array(data.length); 
      console.log(data.length); 

       $.when(function(){ 
        for(var i=0;i<=data.length,i++) 
        { 
         $.get("commonCore/templates/" + data[i].templateHtml ,function(html){ 
          a[i]=html; 
         }); 
        } 
       }).then(function(d){ 
        for (var j=0;j<data.length;j++) 
        { 

         filterTemplate=Handlebars.compile(a[j]); 

         replaceFilterTemplate(data[i].classids[j]); 

        } 
       }) 

      } 
     ); 
+0

爲什麼你不只是遵循給出的例子文檔? http://api.jquery.com/jQuery.getJSON/ – Jonast92

+0

雖然它不是錯誤消息的原因,但您有另一個_error_:'a [i] = html;'不正確。因爲'i'在那裏總是'data.length + 1'。 –

+0

我有一個偷偷的懷疑,因爲'循環正在處理最後一次迭代... – tymeJV

回答

0

function(html)之後它期待一個代碼塊:

function(html) { ..some code.. } 
+0

a [i] = html;僅在該功能內部。我很抱歉,我認爲我的力量讓你 –

0

for環有2個錯誤:

1)替換分號,逗號

2)你應該改變<=只是<

因此,最終的結果應該for(var i=0; i<data.length; i++)

+0

我固定循環部分現在車把給出錯誤。它看起來像html變量是未定義的,如在chrome中看到的。任何建議 –

+0

因爲我看不到所有東西,請嘗試在第一個循環內添加'console.log(arguments);'。這將顯示您的Web服務返回的數據。您需要從那裏進行調試。 –

相關問題