Estou com a seguinte dúvida, existe a classe request no prototype, justamente para fazer uma requisção para o servidor.
Ela é usada da seguinte forma:
var pars = 'meuParametro=' + parametro;
var requisicao = new Ajax.Request(
url,
{
method: 'get',
parameters: pars,
onComplete: processaRequest
});
...
function processaRequest(request) {...}
Depois de o ajax enviar a requisição para o servidor, o mesmo retorna em tipo MINE“text/xml” do qual posso usar a biblioteca DOM para processar. Porém não sei o equivalemente a esse processo no prototype:
“Considerar o objeto request, o parámetro de entrada da função processaRequest”
var msg = request.responseXML.getElementsByTagName("minhaTagXML")[0].childNodes[0].nodeValue;
Dessa forma posso da uma parse XML na entrada enviado pelo server, porém no proto como seria?
normalmente eu retorno uma tag html (como uma lista
ou um <select>) que coloco em um div que fica oculto por default e que aparece com os dados retornados na classe. Porém quase nunca uso o prototype diretamente e sim o script.aculo.us (só uma ou outra vez uso uma função básica do prototype).
[quote=otaviofcs]normalmente eu retorno uma tag html (como uma lista
ou um <select>) que coloco em um div que fica oculto por default e que aparece com os dados retornados na classe. Porém quase nunca uso o prototype diretamente e sim o script.aculo.us (só uma ou outra vez uso uma função básica do prototype).
abraços,
otávio[/quote]
A questão é do request, posso retornar um resposta XML como eu faço com Ajax na mão e no caso usar o DOM para manipular, mas ACREDITO que o Prototype tenha alguma função para “retirar” esse trabalho de mim, porém os exemplos do site são incompletos e não consegui perceber nada que me atendesse.
Cara, não entendi direito o que quis dizer, mas o Script.aculo.us pode te fornecer funções como o Ajax.Autocompleter que mostra uma listagem em um div e te retorna a escolha que o usuário fez nesse div. Nesse caso o Ajax faz uma solicitação a um servlet, que retorna uma lista do tipo
para ser mostrada no div. Aí o usuário escolhe um item da lista e o Ajax me retorna o valor que ele escolheu (um texto obviamente) e eu atualizo 2 campos com isso.
Simples assim. Não tenho que fazer nenhum grande tratamento, mas a função é do http://Sript.aculo.us que ele sim se utiliza das funções básicas do prototype que são mais básicas. Vê se dá uma olhada nos demos http://wiki.script.aculo.us/scriptaculous/show/Demos e ajuda a clarear suas idéias.