Ich versuche, die Funktion getJSON in jQuery zu verwenden, um einige Daten zu importieren und eine Rückruffunktion auszulösen. Die Rückruffunktion wird nicht ausgeführt. Wenn ich jedoch dasselbe mit der get-Funktion versuche, funktioniert es gut. Seltsamerweise funktioniert es mit der Get-Funktion, selbst wenn ich "json" als Typ übergebe. Warum passiert dies? Getestet habe ich die folgende Datei in Firefox 3 und Internet Explorer 7:Callback-Funktion funktioniert nicht, wenn getJSON-Funktion in jQuery verwenden
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html><head>
<meta http-equiv='Content-Type' content='text/html; charset=UTF-8'>
<title>ajax test</title>
<script type="text/javascript" src="/jquery-1.3.2.min.js"></script>
</head>
<body>
<input type="button" id="test1" value="get">
<input type="button" id="test2" value="getJSON">
<input type="button" id="test3" value="get with json type">
<script type="text/javascript">
$("#test1").click(function() {
$.get("index.html",
function(response) {
alert('hi');
//works
}
)
});
$("#test2").click(function() {
$.getJSON("index.html",
function(response) {
alert('hi');
//doesn't work
}
)
});
$("#test3").click(function() {
$.get("index.html",
function(response) {
alert('hi');
//works
},
"json"
)
});
</script>
</body></html>
Diese egal zu geschehen scheint, was URL ich zugreifen, solange es auf der gleichen Domäne ist. Ich habe versucht, einige Daten zu übergeben, und das macht keinen Unterschied.
Natürlich kann ich das Problem umgehen, indem ich die get-Funktion nutze, wie ich es in meiner 3. Testfunktion getan habe, aber ich bin immer noch neugierig, warum das passiert.
Ich weiß, es ist ein similar question hier gefragt, aber es hat meine Frage nicht beantwortet.
Könnte es sein, dass der JSON schlecht gebildet ist? – karim79
Was ist in index.html? – grammar31
Vielleicht hätte ich klarer sein sollen. index.html ist die Datei, die ich oben gepostet habe. Ich versuche nur, auf das Dokument selbst zuzugreifen, was nicht die nützlichste Sache ist. Ich habe das einfach gesagt, weil es einfach und bequem war. Auch hier scheint es egal zu sein, was ich für die URL angegeben habe. Muss der JSON gültig sein? –