Eu possuo a função abaixo que preenche uma lista dinâmica apartir da escolha de uma opção em uma combo.
Mais infelizmente ela só funciona se eu estiver acessando o site da minha própia máquina.
Caso eu faça algun teste de outra máquina o Ajax não retorna os dados.
Alguém poderia me Ajudar.
//função em ajax que vai buscar a página que preenche a lista
function preenchelista(codSistema)
{
/*----------------------------------------------------------------------------------------------*/
// criacao do objeto XMLHTTP do arquivo ajax.js
var oHTTPRequest = createXMLHTTP();
oHTTPRequest.open("post", "http://localhost/PrudAccess2008/objPerfilAplic.asp", true); //enviamos para a página que faz o select do que foi digitado e traz a lista preenchida.
// para solicitacoes utilizando o metodo post deve ser acrescentado
// este cabecalho HTTP
oHTTPRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
// a funcao abaixo e executada sempre que o estado do objeto muda (onreadystatechange)
oHTTPRequest.onreadystatechange=function()
{
// o valor 4 significa que o objeto já completou a solicitacao
if (oHTTPRequest.readyState==4){// abaixo o texto gerado no arquivo executa.asp e colocado no div
var perfilAplic;
var i;
// A variavel abaixo recebe o texto "1#PerfilAplicacao A|2#PerfilAplicacao B|3#PerfilA ..." que foi gerado pelo ASP
var perfilAplics = oHTTPRequest.responseText;
// Aqui corta os textos nos "|"
var list_perfilAplic = perfilAplics.split("|");
// Lista dado por dado dos cortados
for (i = 0; i < list_perfilAplic.length; i++) {
// Aqui corta os textos nos "|"
perfilAplic = list_perfilAplic[i].split("#");
frmPerfilFuncional.lstTodos.options[i] = new Option(perfilAplic[1], perfilAplic[0]);
}
//Elimina todos os dados que não vieram na lista.
for (var j =i; j < frmPerfilFuncional.lstTodos.length; j++) {
frmPerfilFuncional.lstTodos.options[j] = null;
j--;
}
}
}
oHTTPRequest.send("cmbSistema=" + codSistema);
}
Pergunta
William Werneck
Eu possuo a função abaixo que preenche uma lista dinâmica apartir da escolha de uma opção em uma combo.
Mais infelizmente ela só funciona se eu estiver acessando o site da minha própia máquina.
Caso eu faça algun teste de outra máquina o Ajax não retorna os dados.
Alguém poderia me Ajudar.
//função em ajax que vai buscar a página que preenche a lista function preenchelista(codSistema) { /*----------------------------------------------------------------------------------------------*/ // criacao do objeto XMLHTTP do arquivo ajax.js var oHTTPRequest = createXMLHTTP(); oHTTPRequest.open("post", "http://localhost/PrudAccess2008/objPerfilAplic.asp", true); //enviamos para a página que faz o select do que foi digitado e traz a lista preenchida. // para solicitacoes utilizando o metodo post deve ser acrescentado // este cabecalho HTTP oHTTPRequest.setRequestHeader("Content-Type", "application/x-www-form-urlencoded"); // a funcao abaixo e executada sempre que o estado do objeto muda (onreadystatechange) oHTTPRequest.onreadystatechange=function() { // o valor 4 significa que o objeto já completou a solicitacao if (oHTTPRequest.readyState==4){// abaixo o texto gerado no arquivo executa.asp e colocado no div var perfilAplic; var i; // A variavel abaixo recebe o texto "1#PerfilAplicacao A|2#PerfilAplicacao B|3#PerfilA ..." que foi gerado pelo ASP var perfilAplics = oHTTPRequest.responseText; // Aqui corta os textos nos "|" var list_perfilAplic = perfilAplics.split("|"); // Lista dado por dado dos cortados for (i = 0; i < list_perfilAplic.length; i++) { // Aqui corta os textos nos "|" perfilAplic = list_perfilAplic[i].split("#"); frmPerfilFuncional.lstTodos.options[i] = new Option(perfilAplic[1], perfilAplic[0]); } //Elimina todos os dados que não vieram na lista. for (var j =i; j < frmPerfilFuncional.lstTodos.length; j++) { frmPerfilFuncional.lstTodos.options[j] = null; j--; } } } oHTTPRequest.send("cmbSistema=" + codSistema); }Editado por fercosmigAdicionar tag CODE
Link para o comentário
Compartilhar em outros sites
1 resposta a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.