2012-08-09 70 views
0

如果您需要,我可以上傳問題的圖片,但我需要最後一項看起來像其餘的。我讀了一個RSS feed並獲取第一個標題,然後將其填充到列表中。我嘗試像其他格式一樣格式化,但不起作用。這裏是我的功能:jQuery不格式化HTML正確

<script type="text/javascript"> 

jQuery(function() { 

    jQuery.getFeed({ 
     url: 'xml/rss-21.xml', 
     success: function(feed) { 

      var html = ''; 

      for(var i = 0; i < 1; i++) { 

       var item = feed.items[i]; 


       html += '<li data-theme="c">' 
       + '<a href="#page1" data-transition="slide">' 
       + item.link 
       + '">' 
       + item.title 
       + '</a>' 
       + '</li>'; 
      } 

      jQuery('#result').append(html); 
     }  
    }); 
}); 

</script> 

我需要它格式化,如:

<li data-theme="c"> 
        <a href="http://www.tristateis.com" data-transition="slide"> 
         Win a Free Digital Pocket Memo 
        </a> 
       </li> 

謝謝您的幫助。

+0

查看我的eddited答案 – 2012-08-09 19:00:37

+0

你能告訴我們你得到的是什麼嗎? – 2012-08-09 19:16:06

+0

http://postimage.org/image/y0nyv4tin/ – 2012-08-09 19:23:54

回答

1

看起來你實際上並不在這裏做一個鏈接, href應該是item.link(假設這是正確的值)

html += '<li data-theme="c">' 
     + '<a href="' + item.link +'" data-transition="slide">' 
     + item.title 
     + '</a>' 
     + '</li>'; 
+0

你的權利,我只需要顯示標題而不是鏈接。我忘了在我原來的帖子中把它寫出來。我複製上面的文本,但我仍然不像列表中的其他元素。這是它的樣子:http:// postimage。org/image/y0nyv4tin/ – 2012-08-09 19:09:42

+0

在這種情況下,它看起來可能有一些類別錯過了其他類別。它生成的html是有效的。您可以右鍵單擊其中一個鏈接並選擇chrome中的檢查元素,它將顯示標籤所有的樣式/屬性 – grdaneault 2012-08-09 19:14:50

+0

謝謝!我檢查了元素,發現了我需要的東西! – 2012-08-09 19:36:57

1

的問題似乎是,當你追加到html上:

html += '<li data-theme="c">' 
      + '<a href="#page1" data-transition="slide">' 
      + item.link 
      +" "    
      + item.title 
      + '</a>' 
      + '</li>'; 

你也可以做什麼,以獲得更多的控制不僅僅是格式化字符串是要做到這一點:

var li = $('<li></li>',{ 
    'data-theme' : 'c', 
}); 

var link = $('<a></a>',{ 
    href : item.link 
    text : item.title, 
    'data-transition' : 'slide' 
}); 

然後只是li.append(a);這樣,它更容易編輯,這也是一個更好的做法

1
html += '<li data-theme="c">' 
+ '<a href="#page1" data-transition="slide">' 
+ item.link 
+ '">' // problem here 
+ item.title 
+ '</a>' 
+ '</li>'; 

應該

html += '<li data-theme="c">' 
+ '<a href="#page1" data-transition="slide">' 
+ item.link 
+ item.title 
+ '</a>' 
+ '</li>'; 

編輯:

你需要把鏈接在正確的地方:

html += '<li data-theme="c">' 
+ '<a data-transition="slide" href="' 
+ item.link + '" >' 
+ item.title 
+ '</a>' 
+ '</li>'; 
+0

感謝您的解決方案,但它仍然無法正常工作,嘗試了兩種解決方案。文本位於ul中,但仍未正確格式化。 – 2012-08-09 18:51:52

+0

好吧,讓我們看看你得到的輸出。 – Ibu 2012-08-09 18:53:56

+0

http://postimage.org/image/y0nyv4tin/ – 2012-08-09 19:01:59