Ich möchte die Elemente eines Arrays von json zurückgegeben zählen. Wenn ich response.length
verwende, zählt es alle Zeichen im Array (ich denke schon), während ich es zählen soll, wie viele Elemente es im Array gibt. Die gleiche Methode funktioniert auf anderen Seiten, nur nicht mit dieser..Length zählt Zeichen, nicht die Array-Länge
Dies ist der PHP-Code:
...$response[] = array("id" => $row['appid'],
"hour" => $row['hour'],
"tname" => $tname,
"tsurname" => $tsurname,
"cname" => $cname,
"csurname" => $csurname,
"cgsm" => $cgsm,
"cemail" => $cemail,
"cdept" => $cdept,
"cdeg" => $cdeg,
"purpose" => $purpose,
"clientnotshown" => $row['clientnotshown']);
};
if(isset($response)){
echo json_encode($response);
} else {
$response = array("val" => 0);
echo json_encode($response);
};
Javascript-Code:
function updateTable() {
var getData = {
date: $("#displaydate").val(),
operation:"getData"
}
$.post("printoperations.php", getData).done(function(response) {
if (response.val != 0){
alert("so far so good")
var arrayLength = response.length
alert(response)
alert(arrayLength)}
};
Hier ist ein Bild von dem, was ich bekomme. Ich mag die Anzahl der Elemente erhalten, die in diesem Fall ist 2.
parse diese Antwort auf das Objekt und dann die Zählung davon. –
Haben Sie versucht, den JSON zu analysieren, um ein tatsächliches Array zu erhalten? Oder geben Sie "json" als Datentyp an, wenn Sie '$ .post()' aufrufen, und jQuery analysiert es für Sie. – nnnnnn
'JSON.parse (Antwort)', oder sagen Sie jQuery, dass Sie eine JSON-Antwort erwarten. – Svenskunganka