Gibt es einen guten Weg, wenn es eine große Liste von Variablenwerten gibt, die über Ajax aus anderen Dateien abgerufen und dann vielen Variablen in js zugewiesen werden?
Übergeben Sie den Rückgabewert in der PHP-Datei an die beiden Variablen von js.
Die beiden Variablen in der erhaltenen js-Datei sind:
bo_count=3
Und
hd_count=3
PHP-Code<?PHP
//Generieren Sie einen JSON-String. Sie können die mit PHP gelieferte Funktion json_encode in Betracht ziehen oder eine Open-Source-PHP-JSON-Klasse googeln.
$return = "";
?>
<script type='text/javascript'>
var content = eval("(<?PHP echo $return;?>)");//$return entspricht hier der vom Server zurückgegebenen Zeichenfolge, nachdem Ajax gesendet wurde
for(var i im Inhalt){
window[i] = content[i];
}
alarm(bo_count);//123
alarm(hd_count);//456
</script>
Fenster['abc'] = 1;
Dies entspricht dem Setzen der globalen Variablen abc auf 1. Dies ist nicht wichtig. Wichtig ist, dass Sie nach der Auswertung der JSON-Zeichenfolge den Wert entsprechend der Art und Weise lesen können, wie JS auf die Objekteigenschaften zugreift, und den gewünschten Wert erhalten .
JScript-Code<script type='text/javascript'>
Var-Inhalt = {
bo_count: 123
hd_count: 345
}
alarm(content['bo_count']);
</script>
Die Effizienz der JSON-Zeichenfolge ist recht hoch. Die vorherige interaktive Methode im XML-Format war viel schwieriger zu analysieren.
file.PHP sollte schreiben
echo 'bo_count='.$bocount=count($bo_array[0]);
Echo „n“;
echo 'bd_count='.$bocount=count($bo_array[0]);
Auf diese Weise beträgt der Wert des Inhalts in js „bo_count=3nbd_count=3“.
Es kann auch so sein
Datei.Schreiben in PHP
echo 'bo_count='.$bocount=count($bo_array[0]);
Echo „;“;
echo 'bd_count='.$bocount=count($bo_array[0]);
Auf diese Weise beträgt der Wert des Inhalts in js „bo_count=3;bd_count=3“.
Kurz gesagt, legale JS-Anweisungen müssen über Ajax weitergeleitet werden
Dann schreibe in js
success:function(contents) {
eval(Inhalt);
}
Verwenden Sie JSON-Variablen. Diese Methode habe ich wiederholt ausprobiert.
JScript-Code
Funktion(Daten){
var myjson='';
eval('myjson=' + data + ';');
}