Necesito obtener el ancho de un elemento DOM para trabajar con los datos más tarde con PHP. La llamada ajax y el PHP están en la misma página.
Así es como se ve la página:
<div id="elem" width="200px"></div> <script> let wd = document.getElementById('elem').offsetWidth; $.ajax({ type: "POST", url: "index.php", data: {"width": wd} }); </script> <div id="elem2"> <?php echo $_POST['width'] . 'px'; ?> </div> Así que tengo elem que tiene un ancho no fijo y necesito obtenerlo para poder trabajar con eso en PHP más tarde. Es importante obtener el ancho primero, porque elem se representa antes que elem2 y necesito el ancho de elem para mostrar elem2 correctamente.
La salida actual para echo $_POST['width'] no es nada. He visto a personas obtener los datos de ajax en la misma página, pero usaron entradas de formulario, pero PUBLICÉ el ancho de elem .
No sé si esto puede ayudarte o no, pero puedes usar el éxito de ajax para mostrar el ancho de elem1 dentro de elem2:
$.ajax({ type: "post", url: "index.php", //or somewhere else, data: { width: wd }, dataType: "json", success: function( response ) { document.getElementById("elem2").innerHTML = response.width } })