titulo1.asp
<!--#include file="conexao.asp" -->
<%
sql = "select * from CDU1"
set rs = conexao.Execute(sql)
%>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Biblioteca</title>
</head>
<body>
<script language="javascript" src="ajax.js"></script>
<FORM method="post" name="frm1" id="frm1">
<table width="500" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="19">
<select style="width:100%" id="titulo1" name="titulo1" onChange="trazdados();">
<option value="0">Selecionar...</option>
<%
while not rs.EOF
%>
<option value="<%Response.Write(rs("id_titulo1"))%>"><%=rs("titulo1")%></option>
<%
rs.MoveNext
wend
rs.close
set rs = nothing
%>
</select>
</td>
</tr>
<tr>
<td height="19">
<!-- ESSA É A SEGUNDA COMBO. -->
<span id='divcombotitulo2'>
<select style="width:100%" id="titulo2" name="titulo2" onChange="dadostitulo2();">
<option value="0">Selecionar...</option>
</select>
</span>
</td>
</tr>
<tr>
<td height="19">
<!-- ESSA É A TERCEIRA COMBO. -->
<span id='divcombotitulo3'>
<select style="width:100%" id="titulo3" name="titulo3">
<option value="0">Selecionar...</option>
</select>
</span>
</td>
</tr>
<tr>
<td height="19"> </td>
</tr>
</table>
<!-- ACHO QUE NEM TA FUNCIONANDO ISSO AQUI... -->
<input type="hidden" name="id_titulo1" id="id_titulo1" value="<%=id_titulo1%>" size="3">
<input type="hidden" name="id_titulo2" id="id_titulo2" value="<%=id_titulo2%>" size="3">
<input type="hidden" name="id_titulo3" id="id_titulo3" value="<%=id_titulo3%>" size="3">
</form>
</body>
</html>
<script>
function trazdados()
{
var arr = new String(frm1.titulo1.value);
frm1.id_titulo1.value = arr[0];
combotitulo2();
combotitulo3();
}
function combotitulo2()
{
var combotitulo2 = createXMLHTTP();
combotitulo2.open("post", "titulo2.asp", true);
combotitulo2.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
combotitulo2.onreadystatechange=function(){
if (combotitulo2.readyState==4){
document.all.divcombotitulo2.innerHTML = combotitulo2.responseText;}}
combotitulo2.send("id_titulo1="+frm1.id_titulo1.value);
}
function combotitulo3()
{
var combotitulo3 = createXMLHTTP();
combotitulo3.open("post", "titulo3.asp", true);
combotitulo3.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
combotitulo3.onreadystatechange=function(){
if (combotitulo3.readyState==4){
document.all.divcombotitulo3.innerHTML = combotitulo3.responseText;}}
combotitulo3.send("id_titulo2="+frm1.id_titulo2.value);
}
function dadostitulo2()
{
var arr = new String(frm1.titulo2.value);
frm1.id_titulo2.value = arr[3];
combotitulo3();
}
</script>
titulo2.asp
<!--#include file="conexao.asp" -->
<%
id_titulo1 = request("id_titulo1")
sql2 = "SELECT * FROM CDU2 WHERE id_titulo1=" &id_titulo1
set rs2 = conexao.Execute(sql2)
%>
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td>
<select style="width:100%" id="titulo2" name="titulo2" onChange="dadostitulo2(this.value);">
<%while not rs2.EOF%>
<option value="<%Response.Write(rs2("id_titulo2"))%>"><%=server.HTMLEncode(rs2("titulo2"))%></option>
<%rs2.MoveNext
wend
rs2.close
set rs2 = nothing
%>
</select>
</td>
</tr>
</table>
titulo3.asp
<!--#include file="conexao.asp" -->
<%
id_titulo2 = request.form("id_titulo2")
sql3 = "SELECT * FROM CDU3 WHERE id_titulo2=" &id_titulo2
'response.Write(sql3)
'response.Write(id_titulo2)
'response.End()
set rs3 = conexao.Execute(sql3)
%>
<table cellpadding="0" cellspacing="0" border="0">
<tr>
<td>
<select style="width:100%" id="titulo3" name="titulo3">
<%while not rs3.EOF%>
<option value="<%Response.Write(rs3("id_titulo3"))%>"><%=server.HTMLEncode(rs3("titulo3"))%></option>
<%rs3.MoveNext
wend
rs3.close
set rs3 = nothing%>
</select>
</td>
</tr>
</table>
[url="http://www.root.eti.br/projeto/10/titulo1.asp"]Ver na prática o erro[/url]
[b]Ninguém vai se habilitar em responder???
Vou tentar simplificar meu problema...[/b]
<script>
function trazdados()
{
var arr = new String(frm1.titulo1.value);
frm1.id_titulo1.value = arr[0];
combotitulo2();
}
function combotitulo2()
{
var combotitulo2 = createXMLHTTP();
combotitulo2.open("post", "titulo2.asp", true);
combotitulo2.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
combotitulo2.onreadystatechange=function(){
if (combotitulo2.readyState==4){
document.all.divcombotitulo2.innerHTML = combotitulo2.responseText;}}
combotitulo2.send("cod1="+frm1.id_titulo1.value);
}
function combotitulo3()
{
var combotitulo3 = createXMLHTTP();
combotitulo3.open("post", "titulo3.asp", true);
combotitulo3.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
combotitulo3.onreadystatechange=function(){
if (combotitulo3.readyState==4){
document.all.divcombotitulo3.innerHTML = combotitulo3.responseText;}}
combotitulo3.send("cod2="+frm1.id_titulo2.value);
}
function dadostitulo2()
{
var arr = new String(frm1.titulo3.value);
frm1.id_titulo3.value = arr[3];
function combotitulo3()
}
</script>
São 3 menu/list, o 1° e 2° funciona perfeitamente, mas o 3° não recebe os dados de jeito nenhum, testei as 3 páginas separadamente e ta ok, mas a "function combotitulo3" ta com problema para enviar o id_titulo2 para página "titulo3.asp"...Ajuda ae meu povo! Pago uma cerveja!
Edição feita por: Édipo Costa Rebouças, 07/07/2010, 18:04.
Use o padrão bbCode para postagem de códigos










