Foros del Web » Programando para Internet » ASPX (.net) »

Referenciar ID's en Javascript

Estas en el tema de Referenciar ID's en Javascript en el foro de ASPX (.net) en Foros del Web. Hola, Os pongo en situacion: Tengo tres textbox y un radio button list. Un textbox es el precio total, otro es el descuento y otro ...
  #1 (permalink)  
Antiguo 01/10/2007, 05:27
Avatar de Javier Santamaria  
Fecha de Ingreso: julio-2007
Mensajes: 296
Antigüedad: 16 años, 9 meses
Puntos: 1
Referenciar ID's en Javascript

Hola,

Os pongo en situacion:
Tengo tres textbox y un radio button list. Un textbox es el precio total, otro es el descuento y otro el precio final. En el readio button list se muestran las opciones del tipo de descuento, que puede ser porcentual o cuantitativo.

Quiero crear una funcion de javascript que cuando cambie el descuento y ese textbox pierda el foco me calcule automaticamente el precio final. Esta funcion obviamente necesita saber que tipo de descuento se aplica para aplicar una formula u otra. La funcion la he creado y funciona perfectamente en una pagina de prueba, pero no me funciona en mi pagina.

El problema creo que esta al utilizar una master page (no utilizada en la pagina de prueba). Ya que, cuando intento recuperar el elemento del documento mediante "document.getElementById, no se que "id" utilizar. Es decir, he probado con:

1. La id que utilizaba en mi pagina de prueba que era: "Rdol_0". Esta id la copie del codigo HTML que se genera para mostrar la pagina. La id supuse que se correspondia con el nombre de la radio button list (Rdol) y el indice de la opcion seleccionada (_0).

2. La id que se genera en esta nueva pagina: 'ctl00_ContentPlaceHolder_RdoLConcession_0'. Donde vemos que se añade el codigo del content place holder.

Ninguna de las dos alternativas funciona. Por tanto pregunto a ver si alguien me puede decir como puedo obtener el indice seleccionado de la radio button list en javascript, teniendo en cuenta que se usa un content place holder.

Y para un futuro, como poder renombrar al crearse la pagina html los elementos utilizados en asp.net para poder referenciarlos luego mediante javscript, en lugar de tener que copiar y pegar nombres tan largos como el de la degunda prueba.

PD: Os dejo la funcion por si ayuda en algo:

function CalculateFare(d,t,f)
{
if (document.getElementById('ctl00_ContentPlaceHolder _RdoLConcession_0').checked == true)
{
f.value = (1 - (d.value / 100)) * t.value;
}
else
{
f.value = t.value - d.value;
}
}

Saludos y muchas gracias
  #2 (permalink)  
Antiguo 02/10/2007, 04:37
Avatar de Javier Santamaria  
Fecha de Ingreso: julio-2007
Mensajes: 296
Antigüedad: 16 años, 9 meses
Puntos: 1
Re: Referenciar ID's en Javascript

Hola de nuevo, he llegado a esta funcion que me ha servido para solucionar el tema:

<script type="text/javascript" language="javascript" >

function CalculateFare(d)
{
var t = document.getElementById('<%=TxtPrice.ClientId%>');
var f = document.getElementById('<%=TxtFinalPrice.ClientId %>');
if (GetSelectedOption('<%=RdoLConcession.ClientId%>') == "%")
{
f.value = (1 - (d.value / 100)) * t.value;
}
else
{
f.value = t.value - d.value;
}
}

function GetSelectedOption(ctrlOptionsId)
{
var position = 0;
var item = document.getElementById(ctrlOptionsId+"_"+position );
while(item != null)
{
if(item.checked)
{
return item.value
}
else
{
position += 1;
item = document.getElementById(ctrlOptionsId+"_"+(positio n));
}
}
}

</script>

Saludos
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:21.