Ist es möglich, die Farbe eines CSS-Elements nach etwas passiert auf dem Server zu ändern?Ändern Sie CSS-Stil mit AJAX und ohne Nachladen
In meinem Programm klicke ich auf eine Schaltfläche und danach startet ein PHP-Programm. Dieses Programm ändert einen Wert im Server (Wert eines GPIO-Ports eines Raspberry Pi).
Gibt es eine Möglichkeit, dass ich ein CSS-Attribut mit PHP ändern kann, nachdem die Seite geladen wurde? Wenn ich AJAX ausprobiere, hat das keine Auswirkungen, da die Site bereits geladen ist und die Ausgabe keine Auswirkungen auf die Site hat.
<div id="output">
<script type='text/javascript'>
var gpio_status = '0';
</script>
</div>
<script type="text/javascript">
var php_output = document.getElementById("output");
var request;
function gpio_out(gpio_nr) {
request = new XMLHttpRequest();
request.open("post", "gpio_out.php", true);
request.setRequestHeader("Content-type", "application/x-www-form-urlencoded");
request.send("daten=" + gpio_nr);
request.onreadystatechange = request_status;
}
function request_status() {
if (request.readyState == 4 && request.status == 200) {
php_output.innerHTML = request.responseText;
}
}
</script>
Inhalt der AJAX-Datei:
$gpio_status = shell_exec("cat /sys/class/gpio/gpio" . $gpio_nr . "/value");
echo "<script type='text/javascript'>";
echo "var gpio_status = '$gpio_status';";
echo "</script>";
Am Ende mag ich das JS-Variable "gpio_status". Aber es hat immer den gleichen Wert, den ich am Anfang angegeben habe: 0. Wenn ich colole.log() die Variable bekomme, bekomme ich immer 0. Aber mein anderer Code funktioniert gut.
sollte leicht in einem Ajax-Callback getan werden, entweder durch Umschalten einer Klasse oder Inline-Stil mit Javascript. Insgesamt sind die Details der Frage viel zu vage. Nehmen Sie sich etwas Zeit, um [fragen] und [Frage-Checkliste] (http://meta.stackoverflow.com/questions/260648/stack-overflow-question-checklist) zu lesen und aktualisieren Sie dann die Frage mit den richtigen Details und Code – charlietfl
'Wenn ich AJAX versuche es hat keine Auswirkungen, weil die Website bereits geladen ist, und die Ausgabe hat keine Auswirkungen auf die Website "- Sie tun es falsch, zeigen Sie den Code –
Können Sie bitte überprüfen Sie meinen Code? – ChiefAlu