Mehrere Divs automatisch aktualisieren

nchristoph

Erfahrenes Mitglied
Hallo Zusammen,

ich versuche gerade mehrere Divs automatisch zu aktualisieren.

Ein Problem was ich habe: Ich muss mit Placeholdern arbeiten.

Hier mein Code, den ich bis jetzt verwende:
Code:
$(document).ready( function () {
setInterval(function () {
var newDate = new Date();
var datetime = newDate.getTime();
$('#resource_img').html('[IMG]https://www.tutorials.de/memory_usage.png?currenttime?' + datetime + '[/IMG');
$('#online_players').text('${ONLINE_PLAYERS}');
$('#character_info').text('${CHARACTER_INFO}');
$('#log_container').html('${LOG}');
});
});

Die Placeholder werden über einen JavaServer generiert und da habe ich keinen Zugriff.
Das ganze ist ein Interface für einen Spielserver.

Kann mir da wer nen Tip geben?

Leider überschreibt das Forum den Code mit IMG Tags, das ist der HTML Image Tag im richtigen Code.
 
Und wo genau ist nun das konkrete Problem? "Kein Zugriff" = Platzhalter werden erst garnicht ersetzt/generiert?

Gibt es Fehlermeldungen seitens des Servers und/oder Clients (JS)?
 
Ups sry, wusste hab was vergessen:

in der Firebugs Konsole kommt das hier:

SyntaxError: unterminated string literal
bei der Zeile hier:
Code:
$('#log_container').html('${LOG}');
 
Im Normalfall (mit Zugriff auf den Code) lässt sich das vermutete Problem (http://jsfiddle.net/spicelab/zm1grrdg/) z.B. mit einem Backslash am Ende der Zeilen fixen:
Code:
$('#log_container').html("<span style='color:red'>foo\
<b>bar</b></span> \
foobar");
http://jsfiddle.net/spicelab/64g6qbxs/

In Deinem Fall würde ich es daher mal mit .replace() versuchen:
Code:
var htmlString = $('#log_container').html().replace(/\n/g, '');
$('#log_container').html(htmlString);
http://jsfiddle.net/spicelab/pba2hruh/

[edit]jsfiddle-Demos nachgereicht[/edit]
 
Zuletzt bearbeitet:
Danke für die Antwort.

mit .replace() habe ich zwar die Fehlermeldung nicht mehr, der Inhalt von ${LOG} wird allerdings auch nicht neu abgerufen.
 
Die Jquery Funktion schaut so aus.

Code:
  $(document).ready(
  function () {
  setInterval(function () {
  var newDate = new Date();
  var datetime = newDate.getTime();
  $('#resource_img').html('<img src="memory_usage.png?currenttime?' + datetime + '" style="width:624px;height:225px;" alt="memory_usage" />');
  $('#online_players').text('${ONLINE_PLAYERS}');
  $('#character_info').text('${CHARACTER_INFO}');
  var htmlString = $('#log_container').html().replace(/\n/g, '');
  $('#log_container').html(htmlString);
  },3000);
  });

Live geht leider nicht, ist im moment nur bei mir lokal und ohne entsprechenden Gameserver würds nicht funktionieren.
 

Neue Beiträge

Zurück