HTML Combo + javascript

Iniciado por extreme69, 24 Diciembre 2011, 21:09 PM

0 Miembros y 1 Visitante están viendo este tema.

extreme69

Bueno, la cosa es que al utilizar esta línea funciona perfecto y me concatena un código en base a las opciones de unos combobox, pero cuando la misma línea la pongo dentro de una función aunque sigue funcionando me deja toda la pantalla en blanco y sólo muestra el valor cuando en realidad el valor debería mostrarse en X parte de la página como cuando no está dentro de la función.

document.write(code.concat(val,val2));

¿Ideas de porqué sucede esto?

Se me ocurren un par de opciones para evitar esto, la primera sería utilizar un textbox y mandar el valor del javascript al textbox, y la segunda que sería más prolija sería utilizar un label y mandar el valor del javascript al label.

La pregunta es ¿como? xD

Sepan disculpar, soy nuevo en javascript.

extreme69

Listo, lo solucioné así:

<label id="codelbl">code</label>

y en JS:

document.getElementById('codelbl').innerHTML = (code.concat(val,val2));

Mr. Crowley

Hola, en realidad es demasiado confusa su descripción... o al menos yo no entendí mucho :S

Debe tomar en cuenta que está escribiendo directamente en el documento, es decir, si la función se ejecuta hasta el final, cuando se carga todo el documento HTML, la función imprimirá ese texto al final del documento.

Ejemplo de lo que pienso usted está haciendo:
Código (html4strict) [Seleccionar]

Mi codigo HTML
Aqui quiero mi codigo javascript
Continuacion de otros codigos HTML
Codigos javascript u otras cosas


Si ese es su caso, entonces tiene dos opciones:

1. Crear una capa y por medio de su propiedad innerHTML insertar el código ahí. Es perfecto porque usted posiciona su capa donde quiere y javascript se encarga de colocarle el contenido.

2. Ejecutar el código javascript actual (el que usted está utilizando) en el lugar exacto del documento. Ejemplo:

Código (html4strict) [Seleccionar]

Mi codigo HTML
<script>
    document.write(code.concat(val,val2));
</script>
Continuacion de otros codigos HTML
Codigos javascript u otras cosas


No se si me expliqué, pero como le digo, no está muy clara su pregunta :S

Saludos!
Mi blog personal: www.calirojas.com

Mr. Crowley

Disculpe, desde hace rato tenía la respuesta pero se me había ido la conexión :(
Exactamente eso era lo que tenía que hacer! Se respondió solo jejejeje
Mi blog personal: www.calirojas.com

extreme69

Aunque ya lo había solucionado... de todas formas muchas gracias por tu respuesta... y Felíz Navidad, son las 2:24am del 25 aquí y yo nerdeando  :o

Tuve un par de problemas más, pero ahora que comprendí como son las sintaxis en javascript todo se me hizo más fácil.

Está un poco desprolijo, pero esto es lo que estaba intentando hacer (ya lo hice), y como siempre dejo el código por si alguien está recién empezando y tiene los mismos inconvenientes que yo ya pasé:

 function refresh(){
 
   var combo1 = videodetails.format
   var val = combo1.options[combo1.selectedIndex].value
   var combo2 = videodetails.resolution
   var val2 = combo2.options[combo2.selectedIndex].value
var combo3 = videodetails.color
   var val3 = combo3.options[combo3.selectedIndex].value
var combo4 = videodetails.scenes
   var val4 = combo4.options[combo4.selectedIndex].value


var code
var fin
code = "Code: ";

document.getElementById('codelbl2').innerHTML = (code.concat(val,val2,val3,val4));




;








  fin = (val.concat(val2,val3,val4));


var precio1
  var precio2

precio1 = "Precio: ";

if (fin == "_mp4_360_red_1"){
var precio
precio = "$2";
document.getElementById('codelbl').innerHTML = (precio1.concat(precio));

}
if (fin == "_mp4_480_red_1"){
var precio
precio = "$3";
 document.getElementById('codelbl').innerHTML = (precio1.concat(precio));
}
if (fin == "_mp4_720_red_1"){
var precio
precio = "$4";
 document.getElementById('codelbl').innerHTML = (precio1.concat(precio));
}
if (fin == "_mp4_1080_red_1"){
var precio
precio = "$5";
 document.getElementById('codelbl').innerHTML = (precio1.concat(precio));
}




if (fin == "_mp4_360_red_2"){
var precio
precio = "$4";
document.getElementById('codelbl').innerHTML = (precio1.concat(precio));

}
if (fin == "_mp4_480_red_2"){
var precio
precio = "$6";
 document.getElementById('codelbl').innerHTML = (precio1.concat(precio));
}
if (fin == "_mp4_720_red_2"){
var precio
precio = "$8";
 document.getElementById('codelbl').innerHTML = (precio1.concat(precio));
}
if (fin == "_mp4_1080_red_2"){
var precio
precio = "$10";
 document.getElementById('codelbl').innerHTML = (precio1.concat(precio));
}


;
}


Me faltan más if y un else y sigo con otra cosa.