2013-09-25 38 views
0

所以我有一個Javascript腳本(不判斷呢,我很少使用的技術之前,這是需要一個整潔的!)的Javascript腳本解析值到JSP頁面

$(document).ready(function() 
{ 
    retrieveComments(); 
}); 


function retriveComments(){ 
     videoID = readCookie("currentVideoID"); 
     $.get("https://gdata.youtube.com/feeds/api/videos/" +videoID+ "/comments", function(d){ 

    $(d).find("entry").each(function(){ 

     var $entry = $(this); 
     var author = $entry.attr("author"); 
     var comment = $entry.find("content").text(); 

     var html = '<div class="videoComments">'; 
     html += '<p class="author">" + author + "</p>'; 
     html += '<p class="comment"> " + comment + "</p>'; 
     html += '</div>'; 

    }; 
    $('#comments').append(html); 
    }); 

我希望檢索值作者和內容(評論),並將其顯示在頁面上。我在一天中發現的例子已經顯示了兩個獨立的文件,一個是腳本,一個是帶有頁面內容的.jsp,然後是對應於最後一行(在我的情況下爲#comments)的類標記(?)。

看到,因爲我不需要任何其他的內容不僅僅是我檢索到的數據和我已經建立了在劇本的內容,我有這樣的:

<div id="comments"> </div> 

,但它不顯示,我看不出我有什麼不同的情況。

我的整個頁面看起來像:

<script type="text/javascript"> 
var videoID = readCookie("currentVideoID"); 

$(document).ready(function() 
    { 
     retrieveComments(); 
    }); 


function retriveComments(){ 
     videoID = readCookie("currentVideoID"); 
     $.get("https://gdata.youtube.com/feeds/api/videos/" +videoID+ "/comments", function(d){ 

     $(d).find("entry").each(function(){ 

      var $entry = $(this); 
      var author = $entry.attr("author"); 
      var comment = $entry.find("content").text(); 

      var html = '<div class="videoComments">'; 
      html += '<p class="author">" + author + "</p>'; 
      html += '<p class="comment"> " + comment + "</p>'; 
      html += '</div>'; 

     }; 
     $('#comments').append(html); 
     }); 

}); 
</script> 
<h1>TEST</h1> 

<div id="comments"> </div> 

任何想法如何,我可以得到的HTML顯示?

+0

使用'的.html()'而不是'.append()',因爲你想從一個字符串生成html而不是簡單地插入html對象。 – TCHdvlp

+0

打開控制檯,有一堆語法錯誤,關閉錯誤的地方,函數名稱不一樣您在文檔就緒功能中調用的函數等不匹配引號.... – adeneo

回答

1

不知道readCookie功能做什麼(我假設它讀取一個cookie),但在這裏是沒有所有的語法錯誤和工作:

$(document).ready(retriveComments); 

function retriveComments() { 
    $.get("https://gdata.youtube.com/feeds/api/videos/jofNR_WkoCE/comments", function (d) { 
     $(d).find("entry").each(function (_, entry) { 
      var author = $(entry).find("author name").text(), 
       comment = $(entry).find("content").text(); 
       html = '<div class="videoComments">'; 

      html += '<p class="author">' + author + '</p>'; 
      html += '<p class="comment">' + comment + '</p>'; 
      html += '</div>'; 

      $('#comments').append(html); 
     }); 
    }); 
} 

FIDDLE

+0

如果您熟悉CQ5就是這樣做的。這個'頁面'實際上是一個組件,當整個頁面被加載時,VideoID被存儲在cookie中。 – RyanSoper

+0

然後只需添加videoID,我將其刪除,並發現一個隨機的Youtube ID以獲得一些評論。 – adeneo

+0

我怎麼錯了?它只是不匹配的引號等?! – RyanSoper