Combo y textbox

11/09/2003 - 22:20 por Yamil Castillo | Informe spam
Hola Foro
En un combo estoy cargando la descripcion de los productos y en un texto,
quiero dejar el precio cuando le hago click en un producto del combo, el
problema es que estoy haciendo un script con el evento onchange del combo y
cargo nuevamente la tabla para que me despliegue el precio.
aca esta el codigo
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="Connections/cn.asp" -->
<%
Dim Recordset1
Dim Recordset1_numRows
Set Recordset1 = Server.CreateObject("ADODB.Recordset")
Recordset1.ActiveConnection = MM_cn_STRING
Recordset1.Source = "SELECT NombreProducto FROM Productos ORDER BY
NombreProducto ASC"
Recordset1.CursorType = 0
Recordset1.CursorLocation = 2
Recordset1.LockType = 1
Recordset1.Open()

Recordset1_numRows = 0

%>
<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<SCRIPT LANGUAGE="vbscript">
OPTION EXPLICIT
Dim intSelected
Sub combo_OnChange
'intSelected = Form1.combo.selectedIndex
intSelected = Form1.combo.value
recuperar
Form1.text1.value = Valor

End Sub

sub recuperar
<%
Dim Rset1
Set Rset1 = Server.CreateObject("ADODB.Recordset")
Rset1.ActiveConnection = MM_cn_STRING
Rset1.Source = "SELECT NombreProducto, PrecioUnidad FROM Productos WHERE
NombreProducto = '" + Replace(intSelected, "'", "''") + "'"
Rset1.CursorType = 3
Rset1.CursorLocation = 3
Rset1.LockType = 3
Rset1.Open()
Valor = Rset1("PrecioUnidad")

%>
end sub
</SCRIPT>

<form name="form1" method="post" action="">
<p>
<select name="combo" id="combo"
title="<%=(Recordset1.Fields.Item("NombreProducto").Value)%>">
<%
While (NOT Recordset1.EOF)
%>
<option
value="<%=(Recordset1.Fields.Item("NombreProducto").Value)%>"><%=(Recordset1
.Fields.Item("NombreProducto").Value)%></option>
<%
Recordset1.MoveNext()
Wend
If (Recordset1.CursorType > 0) Then
Recordset1.MoveFirst
Else
Recordset1.Requery
End If
%>
</select>

</p>
<p>
<input type="text" name="text1">
</p>
</form>
</body>
</html>
<%
Recordset1.Close()
Set Recordset1 = Nothing
%>




Atte.,
Yamil Castillo S.

Preguntas similare

Leer las respuestas

#1 Matias Iacono
11/09/2003 - 22:45 | Informe spam
Y cual es el problema?



"Yamil Castillo" wrote in message
news:%
Hola Foro
En un combo estoy cargando la descripcion de los productos y en un texto,
quiero dejar el precio cuando le hago click en un producto del combo, el
problema es que estoy haciendo un script con el evento onchange del combo


y
cargo nuevamente la tabla para que me despliegue el precio.
aca esta el codigo
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="Connections/cn.asp" -->
<%
Dim Recordset1
Dim Recordset1_numRows
Set Recordset1 = Server.CreateObject("ADODB.Recordset")
Recordset1.ActiveConnection = MM_cn_STRING
Recordset1.Source = "SELECT NombreProducto FROM Productos ORDER BY
NombreProducto ASC"
Recordset1.CursorType = 0
Recordset1.CursorLocation = 2
Recordset1.LockType = 1
Recordset1.Open()

Recordset1_numRows = 0

%>
<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<SCRIPT LANGUAGE="vbscript">
OPTION EXPLICIT
Dim intSelected
Sub combo_OnChange
'intSelected = Form1.combo.selectedIndex
intSelected = Form1.combo.value
recuperar
Form1.text1.value = Valor

End Sub

sub recuperar
<%
Dim Rset1
Set Rset1 = Server.CreateObject("ADODB.Recordset")
Rset1.ActiveConnection = MM_cn_STRING
Rset1.Source = "SELECT NombreProducto, PrecioUnidad FROM Productos WHERE
NombreProducto = '" + Replace(intSelected, "'", "''") + "'"
Rset1.CursorType = 3
Rset1.CursorLocation = 3
Rset1.LockType = 3
Rset1.Open()
Valor = Rset1("PrecioUnidad")

%>
end sub
</SCRIPT>

<form name="form1" method="post" action="">
<p>
<select name="combo" id="combo"
title="<%=(Recordset1.Fields.Item("NombreProducto").Value)%>">
<%
While (NOT Recordset1.EOF)
%>
<option



value="<%=(Recordset1.Fields.Item("NombreProducto").Value)%>"><%=(Recordset1
.Fields.Item("NombreProducto").Value)%></option>
<%
Recordset1.MoveNext()
Wend
If (Recordset1.CursorType > 0) Then
Recordset1.MoveFirst
Else
Recordset1.Requery
End If
%>
</select>

</p>
<p>
<input type="text" name="text1">
</p>
</form>
</body>
</html>
<%
Recordset1.Close()
Set Recordset1 = Nothing
%>




Atte.,
Yamil Castillo S.



Respuesta Responder a este mensaje
#2 Sashka
11/09/2003 - 22:56 | Informe spam
No necesitas hacerlo así... al llenar las opciones del select, puedes
escribir los dos campos... (SELECT NombreProducto, PrecioUnidad FROM
Productos) el precio en el value (que no se verá) y la descripción en en el
text... de modo que te quedará algo así:

<option value="10.54">Lapices</option>

Lo llenas asi:
<option
value="<%=(Recordset1.Fields.Item("PrecioUnidad").Value)%>"><%=(Recordset1.F
ields.Item("NombreProducto").Value)%></option>

Y en el onChange :
document.form1.text1.value document.Form1.combo.options[document.Form1.combo.selectedIndex].value

Sashka

"Yamil Castillo" escribió en el mensaje
news:#
Hola Foro
En un combo estoy cargando la descripcion de los productos y en un texto,
quiero dejar el precio cuando le hago click en un producto del combo, el
problema es que estoy haciendo un script con el evento onchange del combo


y
cargo nuevamente la tabla para que me despliegue el precio.
aca esta el codigo
<%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<!--#include file="Connections/cn.asp" -->
<%
Dim Recordset1
Dim Recordset1_numRows
Set Recordset1 = Server.CreateObject("ADODB.Recordset")
Recordset1.ActiveConnection = MM_cn_STRING
Recordset1.Source = "SELECT NombreProducto FROM Productos ORDER BY
NombreProducto ASC"
Recordset1.CursorType = 0
Recordset1.CursorLocation = 2
Recordset1.LockType = 1
Recordset1.Open()

Recordset1_numRows = 0

%>
<html>
<head>
<title>Documento sin t&iacute;tulo</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
</head>
<body>
<SCRIPT LANGUAGE="vbscript">
OPTION EXPLICIT
Dim intSelected
Sub combo_OnChange
'intSelected = Form1.combo.selectedIndex
intSelected = Form1.combo.value
recuperar
Form1.text1.value = Valor

End Sub

sub recuperar
<%
Dim Rset1
Set Rset1 = Server.CreateObject("ADODB.Recordset")
Rset1.ActiveConnection = MM_cn_STRING
Rset1.Source = "SELECT NombreProducto, PrecioUnidad FROM Productos WHERE
NombreProducto = '" + Replace(intSelected, "'", "''") + "'"
Rset1.CursorType = 3
Rset1.CursorLocation = 3
Rset1.LockType = 3
Rset1.Open()
Valor = Rset1("PrecioUnidad")

%>
end sub
</SCRIPT>

<form name="form1" method="post" action="">
<p>
<select name="combo" id="combo"
title="<%=(Recordset1.Fields.Item("NombreProducto").Value)%>">
<%
While (NOT Recordset1.EOF)
%>
<option



value="<%=(Recordset1.Fields.Item("NombreProducto").Value)%>"><%=(Recordset1
.Fields.Item("NombreProducto").Value)%></option>
<%
Recordset1.MoveNext()
Wend
If (Recordset1.CursorType > 0) Then
Recordset1.MoveFirst
Else
Recordset1.Requery
End If
%>
</select>

</p>
<p>
<input type="text" name="text1">
</p>
</form>
</body>
</html>
<%
Recordset1.Close()
Set Recordset1 = Nothing
%>




Atte.,
Yamil Castillo S.



Respuesta Responder a este mensaje
#3 Yamil Castillo
12/09/2003 - 17:13 | Informe spam
Gracias Sashka
"Sashka" escribió en el mensaje
news:
No necesitas hacerlo así... al llenar las opciones del select, puedes
escribir los dos campos... (SELECT NombreProducto, PrecioUnidad FROM
Productos) el precio en el value (que no se verá) y la descripción en en


el
text... de modo que te quedará algo así:

<option value="10.54">Lapices</option>

Lo llenas asi:
<option



value="<%=(Recordset1.Fields.Item("PrecioUnidad").Value)%>"><%=(Recordset1.F
ields.Item("NombreProducto").Value)%></option>

Y en el onChange :
document.form1.text1.value > document.Form1.combo.options[document.Form1.combo.selectedIndex].value

Sashka

"Yamil Castillo" escribió en el mensaje
news:#
> Hola Foro
> En un combo estoy cargando la descripcion de los productos y en un


texto,
> quiero dejar el precio cuando le hago click en un producto del combo, el
> problema es que estoy haciendo un script con el evento onchange del


combo
y
> cargo nuevamente la tabla para que me despliegue el precio.
> aca esta el codigo
> <%@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
> <!--#include file="Connections/cn.asp" -->
> <%
> Dim Recordset1
> Dim Recordset1_numRows
> Set Recordset1 = Server.CreateObject("ADODB.Recordset")
> Recordset1.ActiveConnection = MM_cn_STRING
> Recordset1.Source = "SELECT NombreProducto FROM Productos ORDER BY
> NombreProducto ASC"
> Recordset1.CursorType = 0
> Recordset1.CursorLocation = 2
> Recordset1.LockType = 1
> Recordset1.Open()
>
> Recordset1_numRows = 0
>
> %>
> <html>
> <head>
> <title>Documento sin t&iacute;tulo</title>
> <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
> </head>
> <body>
> <SCRIPT LANGUAGE="vbscript">
> OPTION EXPLICIT
> Dim intSelected
> Sub combo_OnChange
> 'intSelected = Form1.combo.selectedIndex
> intSelected = Form1.combo.value
> recuperar
> Form1.text1.value = Valor
>
> End Sub
>
> sub recuperar
> <%
> Dim Rset1
> Set Rset1 = Server.CreateObject("ADODB.Recordset")
> Rset1.ActiveConnection = MM_cn_STRING
> Rset1.Source = "SELECT NombreProducto, PrecioUnidad FROM Productos


WHERE
> NombreProducto = '" + Replace(intSelected, "'", "''") + "'"
> Rset1.CursorType = 3
> Rset1.CursorLocation = 3
> Rset1.LockType = 3
> Rset1.Open()
> Valor = Rset1("PrecioUnidad")
>
> %>
> end sub
> </SCRIPT>
>
> <form name="form1" method="post" action="">
> <p>
> <select name="combo" id="combo"
> title="<%=(Recordset1.Fields.Item("NombreProducto").Value)%>">
> <%
> While (NOT Recordset1.EOF)
> %>
> <option
>



value="<%=(Recordset1.Fields.Item("NombreProducto").Value)%>"><%=(Recordset1
> .Fields.Item("NombreProducto").Value)%></option>
> <%
> Recordset1.MoveNext()
> Wend
> If (Recordset1.CursorType > 0) Then
> Recordset1.MoveFirst
> Else
> Recordset1.Requery
> End If
> %>
> </select>
>
> </p>
> <p>
> <input type="text" name="text1">
> </p>
> </form>
> </body>
> </html>
> <%
> Recordset1.Close()
> Set Recordset1 = Nothing
> %>
>
>
>
>
> Atte.,
> Yamil Castillo S.
>
>
>


email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida