2016-10-08 3 views
1

Ich kann nicht das Datum unter jedem RSS-Titel anzeigen. Die Daten zeigen, aber sie zeigen nur am Ende meiner Seite. Ich habe versucht, durch Versuch und Irrtum, aber ich bin gerade für eine Weile festgefahren an diesem Punkt.Wie zeigen und formatieren Sie das Datum mit RSS2JSON?

<script type="text/javascript"> 
var content = document.getElementById('insurance-news'); 

function showFeed(data){ 
    if(data.status == 'ok'){  

     var feedlength = data.items.length; 

     var output = ''; 

     function formatDate(myElement){ 
      var date = new Date(myElement); 
      var months = Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"); 
      var string = months[date.getMonth()] + " " + date.getDate() + ", " + date.getFullYear(); 
      document.write(string); 
     }; 

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

      output += '<p><h2><a href="' + 
      data.items[i].link + '" target="_blank" >' + 
      data.items[i].title + '</h2></a></p><p>' + 
      formatDate(data.items[i].pubDate) + '</p>'; 

     } 

     content.innerHTML = output; 

    } 

} 
</script> 
<script type="text/javascript" src="http://rss2json.com/api.json?callback=showFeed&rss_url=http%3A%2F%2Fmix.chimpfeedr.com%2F36116-Insurance-News"></script> 

Gibt es auch eine Möglichkeit, das Datum so zu formatieren? 10. Oktober 2016 14.00 Uhr

Antwort

1

Für Format der pubDate des Futters, wie Sie in Ihrer Frage vorgeschlagen, diese Zeile ersetzen:

var string = months[date.getMonth()] + " " + date.getDate() + ", " + date.getFullYear(); 

Mit diesem:

var string = months[date.getMonth()] + " " + date.getDate() + ", " + date.getFullYear() + " " + addZero(date.getHours()) + ":" + addZero(date.getMinutes()); 

Ich änderte Ihre Code leicht und hier sind die Ergebnisse:

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

 
// Load news: 
 
function loadNews() { 
 
    $.ajax({ 
 
     url: "http://rss2json.com/api.json?callback=showFeed&rss_url=http%3A%2F%2Fmix.chimpfeedr.com%2F36116-Insurance-News", 
 
     type: "GET", 
 
     dataType: 'jsonp', 
 
     headers: { 
 
      "accept": "application/json;odata=verbose", 
 
     }, 
 
     success: function(data) { 
 
      var feedlength = data.items.length; 
 
      var finalHTML = ""; 
 
      var HTML_DIV = document.getElementById('divAllNews'); 
 

 
      // Validar que haya encontrado el div. 
 
      if (HTML_DIV != null && HTML_DIV != undefined) { 
 

 
       // Validar que la consulta traiga datos. 
 
       if (feedlength != null && feedlength > 0) { 
 
        for (var i = 0; i < feedlength; i++) { 
 
         finalHTML += "<div>" + 
 
          " \t <p>" + "<a href='" + data.items[i].link + "'>" + data.items[i].title + "</a>" + "</p>" + 
 
          " \t <p>" + "Date: " + formatDate(data.items[i].pubDate) + "</p>" + 
 
          "</div>"; 
 
        } 
 
       } 
 

 
       // Colocar los datos. 
 
       HTML_DIV.innerHTML = (finalHTML != "") ? finalHTML : "No results"; 
 
      } 
 
     }, 
 
     error: function(err) { 
 
      alert('An error occurred.'); 
 
     } 
 
    }); 
 
} 
 

 
// Format date: 
 
function formatDate(myElement) { 
 
    var date = new Date(myElement); 
 
    var months = Array("January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"); 
 
    var string = months[date.getMonth()] + " " + date.getDate() + ", " + date.getFullYear() + " " + addZero(date.getHours()) + ":" + addZero(date.getMinutes()); 
 
    return string; 
 
} 
 

 
// Add zero. Source: http://www.w3schools.com/jsref/jsref_gethours.asp 
 
function addZero(i) { 
 
    if (i < 10) { 
 
     i = "0" + i; 
 
    } 
 
    return i; 
 
}
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> 
 
<div id="divAllNews"><i>Loading news...</i></div>

+1

Sehr hilfreich, danke. Ich fand auch, dass ich in meinem ursprünglichen Code einfach document.write (string) hätte ändern können; String zurückgeben; – Andrew

+1

Ihr Code hilft mir definitiv dabei, die Dinge anders zu betrachten und mehr zu erfahren. – Andrew

+0

@Andrew Ich bin froh, zu helfen. –

Verwandte Themen