Ich habe Chrome 7.0 und versuche, auf Felder eines globalen Objekts zuzugreifen. Der Code funktioniert perfekt in Firefox und IE, aber der Debugger von Chrome hilft mir nicht, irgendwohin zu kommen. Ich habe Safari ausprobiert und es hat auch Probleme.Globale JavaScript-Variablen in Webkit
Ich kann den Wert des Timers erhalten, aber wenn ich den Status über die Konsole zugreifen, bekomme ich "[object Object]"
. status.completedJobs
gibt undefined
zurück, auch nach status = $.parseJSON(msg.d);
(JSON-String ist gültig).
Ich bin mir nicht sicher, was ich danach machen soll. Aufruf von $.parseJSON(msg.d);
von der Konsole funktioniert und ich bin in der Lage, die Felder des Objekts mit dem Debugger anzuzeigen. Wie bekomme ich den Status Objekt richtig zugewiesen und global zugänglich?
mein Code hier:
//Object that holds result of AJAX request
var status = new Object();
//Refresh timer variables
var timer;
var timer_is_on = 0;
$(document).ready(function() {
update();
doTimer();
});
/**
* Performs the AJAX request and updates the page
*/
function update() {
$.ajax({
type: "POST",
url: "Default.aspx/getStatus",
data: "{}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(msg) {
if (msg) {
try {
status = $.parseJSON(msg.d);
} catch (e) {
console.log(e);
}
updateProgressBar();
}
}
});
}
function updateProgressBar() {
var percent = Math.round(status.completedJobs/status.numJobs * 100);
$('#progressPercentage').text(percent + '%');
$('#progressbar').progressbar({
value: percent
});
}
/**
* Used to initialize the timer.
*/
function doTimer() {
if (!timer_is_on) {
timer_is_on = 1;
timedCount();
}
}
/**
* Executed on every time interval.
*/
function timedCount() {
update();
timer = setTimeout("timedCount()", 3000);
}
Haben Sie versucht, 'console.dir() '? – aditya
Sind Sie sehr sicher über 'msg.d'? Und welche Daten erhalten Sie zurück? – Harmen
Danke für die schnellen Antworten Jungs. 'console.dir()' ergibt 'undefined'. msg.d Antwort ist: '{" d ":" {\ "numJobs \": 269389, \ "completedJobs \": 102423, \ "running \": true} "}' – checker