2011-03-23 125 views
2

在服務器端,我有一個bean列表。 在客戶端,我用:通過JQuery返回的渲染列表

function callJava() { 
$.getJSON("../reference/test", { name: $('#name').val()}, function(result) { 
         // result is a bean that has a list 
      alert(result.fooList.length); 
}); 
} 

我需要以後能夠使這個列表,經由FreeMarker的。 什麼是殺害我,當我更換此列表設置字符串變量,它工作正常,如:

function callJava() { 
$.getJSON("../reference/test", { name: $('#name').val()}, function(result) { 
alert(result.stringVariable) 

}); 
} 

我怎麼能處理字符串成豆!

+0

這完全不清楚你想要做什麼。目前還不清楚FreeMarker與此有什麼關係。 – Pointy 2011-03-23 14:32:13

+0

好的。讓我再澄清一點。我需要將Java類的String列表傳遞給視圖。然後我需要以某種方式渲染這個列表。目前我只需要打印這個String列表的值。我使用JQuery,併成功地將從java類返回的字符串變量呈現到我的視圖中。現在,它試圖做同樣的事情,但通過一個列表。 – Echo 2011-03-23 14:39:42

回答

1

如果你想要做的是操縱列表中的元素:

function callJava() { 
    $.getJSON("../reference/test", { name: $('#name').val()}, function(result) { 
    for (var i = 0; i < result.fooList.length; ++i) 
     alert(result.fooList[i]); 
    }); 
} 
+0

它仍然沒有通過for循環,也沒有我得到的Java腳本錯誤。 – Echo 2011-03-23 15:02:56

+0

如果它確實是一個數組,並且如果長度大於零,那麼肯定會「通過循環」。 – Pointy 2011-03-23 15:25:46

+0

我已經在服務器端設置了一箇中斷點,並確保此數組的長度爲4。我有我沒有澄清;該列表是從服務器端返回一個斯卡拉列表:) – Echo 2011-03-23 20:26:32

0

其實我有剛剛超過我的問題的更新是,我試圖從服務器端返回的列表是SCALA名單。我通過使用數組而不是JAVA來解決此問題。它的工作原理是使用以下爲尖尖細說:

function callJava() { 
    $.getJSON("../reference/test", { name: $('#name').val()}, function(result) { 
    for (var i = 0; i < result.fooList.length; ++i) 
     alert(result.fooList[i]); 
    }); 
} 
0

你可以捕捉JSON響應,並張貼? jQuery getJSON方法將默默吞下來自格式錯誤的JSON的任何解析錯誤。這可能是發生了什麼事。