Foro de elhacker.net

Programación => Desarrollo Web => Mensaje iniciado por: tecasoft en 23 Octubre 2015, 03:06 am



Título: [Resuelto] pasar 2 valores por javascript
Publicado por: tecasoft en 23 Octubre 2015, 03:06 am
buenas necesito pasar 2 valores por javascript a raiz de:

Código
  1. foreach($fila3 as $value){
  2. echo "<option onclick='partes(".$value['partes'].",".$value['cod_astiller'].")'>".$value['partes']."<option>";
  3. }
  4.  

Código
  1.  
  2. function partes(str,str2) {
  3. if(str.length==0)
  4. {
  5. document.getElementById("partes").innerHTML="";
  6. return;
  7. }
  8.  
  9.  var xhttp = new XMLHttpRequest();
  10.  xhttp.onreadystatechange = function() {
  11.    if (xhttp.readyState == 4 && xhttp.status == 200) {
  12.      document.getElementById("partes").innerHTML = xhttp.responseText;
  13.    }
  14.  }
  15.  xhttp.open("GET", "ajax_partes.php?partes="+str+"&cod_astiller="+srt2, true);
  16.  xhttp.send();
  17. }
  18.  
  19.  

la cosa es que al darle click al evento onclick me mande 2 valores cargados de una tabla sql, me hace el foreach bien, pero falta pasar 2 valores que son el cod_astiller(cod_astillero) y el partes(piezas de un barco) alguna idea de como asar esos valores y que sea por GET? me manda un value pero yo quiero pasar 2 valores ya que cada fila tendra un valor diferente, alguien experto en estas cosas?


Título: Re: pasar 2 valores por javascript
Publicado por: 0roch1 en 23 Octubre 2015, 03:29 am
El evento onclick no es soportado por la etiqueta <option>

utiliza el Dev Tools de tu navegador para ver los posibles errores de javascript.

Ten cuidado con $value['partes'] y $value['cod_astiller'], qué tipo de valores son?, número o texto?.


Título: Re: pasar 2 valores por javascript
Publicado por: tecasoft en 23 Octubre 2015, 03:46 am
Porque dices que el evento onclick no es soportado por la etiqueta <option> ami me funciona en firefox?

$value['partes'] es texto y $value['cod_astiller'] es numerico pero nose como hacer que funcione alguna idea?


Título: Re: pasar 2 valores por javascript
Publicado por: T. Collins en 23 Octubre 2015, 05:10 am
La consola del navegador ayuda mucho:
str2 != srt2


Título: Re: pasar 2 valores por javascript
Publicado por: 0roch1 en 23 Octubre 2015, 06:44 am
Porque dices que el evento onclick no es soportado por la etiqueta <option> ami me funciona en firefox?

$value['partes'] es texto y $value['cod_astiller'] es numerico pero nose como hacer que funcione alguna idea?
:huh:

Que bueno sería que los usuarios finales utilizaran el mismo navegador y versión en donde le funciona de maravilla al desarrollador.

Si $value['partes'] es texto tu option está quedando de la siguiente manera.

Código
  1. <option onclick='partes(ValorPartes,1234)'>ValorPartes<option>

Eso está mal, tienes que pasar ValorPartes como lo que es. Una cadena de caracteres.

Código
  1. <option onclick='partes("ValorPartes",1234)'>ValorPartes<option>


utiliza el Dev Tools de tu navegador para ver los posibles errores de javascript.


Título: Re: pasar 2 valores por javascript
Publicado por: tecasoft en 23 Octubre 2015, 17:50 pm
estoy utilizando el dev tools pero no consigo formatear bien los datos, me sale asi y no consigo añadirle las comillas a popa:

Código
  1. <option onclick="partes(popa)">
  2. popa1
  3. </option>
  4.  

me falta que salga asi :

Código
  1. <option onclick="partes('popa')">
  2. popa1
  3. </option>
  4.  

alguna idea de como formatear bien los datos?


Título: Re: pasar 2 valores por javascript
Publicado por: 0roch1 en 23 Octubre 2015, 18:44 pm
Código
  1. echo "<option onclick='partes(\"".$value['partes']."\",".$value['cod_astiller'].")'>".$value['partes']."<option>";
  2.  

No olvides lo que te comentaron anteriormente.
La consola del navegador ayuda mucho:
str2 != srt2


Título: Re: pasar 2 valores por javascript
Publicado por: tecasoft en 24 Octubre 2015, 03:55 am
se me habra pasado, ya dicen que 4 ojos van mas que 2 jajaja xd
gracias 0roch1 SOLUCIONADO