Tenho uma busca desenvolvida em Flash para buscar nos nós do XML e funciona de modo bem simples.
Funciona da seguinte forma:
Tenho um frame chamado "busca" que possui um campo de "input text" e definido em seu "var" como "word"(palavra). Na frente desse "input text" existe um botão com o código abaixo que chama a função da busca:
Ainda neste frame (chamado busca) existe todo o código referente a busca, inclusive a função "search" que é chamada por este botão. O código segue abaixo:
stop();
var results = "";
System.useCodepage = true;
function record(titulo, descricao, resumo, link)
{
this.titulo = titulo;
this.descricao = descricao;
this.resumo = resumo;
this.link = link;
} // Fim da Funcao
function search(string)
{
var nResults = 0;
var i = 0;
while (i < dbArray.length)
{
for (j = 0; j < dbArray[i].resumo.length; j++)
{
if (dbArray[i].resumo[j].toLowerCase().indexOf(string.toLowerCase()) != -1)
{
found = true;
++nResults;
break;
} // end if
} // end of for
if (found)
{
results = results + ("<b><a href="" + dbArray[i].link + ""><u>" + dbArray[i].titulo + "</u></a></b>" + "<br>");
results = results + (dbArray[i].descricao + "<br><br>");
found = false;
} // end if
++i;
} // end while
if (nResults == 0)
{
results = "<b>Não foram encontrados registros com a palavra-chave pesquisada.</b>";
} // end if
gotoAndStop("buscaresultado");
} // Fim da Funcao
stop ();
fscommand("allowscale", "false");
var dbArray = new Array();
var dbXML = new XML();
dbXML.onLoad = function ()
{
var titulo;
var descricao;
var link;
var resumo;
var ndRoot = this.firstChild;
var i = 0;
while (i < ndRoot.childNodes.length)
{
if (ndRoot.childNodes[i].nodeName != null)
{
titulo = ndRoot.childNodes[i].attributes.titulo;
descricao = ndRoot.childNodes[i].attributes.descricao;
var j = 0;
while (j < ndRoot.childNodes[i].childNodes.length)
{
if (ndRoot.childNodes[i].childNodes[j].nodeName == "link")
{
link = ndRoot.childNodes[i].childNodes[j].firstChild.nodeValue;
}
else if (ndRoot.childNodes[i].childNodes[j].nodeName == "resumo")
{
resumo = ndRoot.childNodes[i].childNodes[j].firstChild.nodeValue.split("|");
} // end else if
++j;
} // end while
dbArray.push(new _root.record(titulo, descricao, resumo, link));
} // end if
++i;
} // end while
};
dbXML.load("bdcongresso.xml");
Selection.setFocus("word");
Entretanto, depois que clica no botão acima mencionado e chama a função Search, vai para outro frame que exibe o resultado. Esse outro frame chama "resultadobusca" e tem um "Dynamic text" que exibe o Var "results" responsável pelo conteúdo da busca.
Estou tentando exibir a busca diretamente, sem que haja um campo para a pessoa digitar, no caso eu passaria o parâmetro diretamente que é o "word".
Preciso que tudo seja feito em apenas um frame, ou seja, que este frame só tenha o "Dynamic text" responsável pela exibição da busca e queria que o parâmetro ou a palavra da busca seja sempre "fulano" por exemplo.
Mais ou menos assim:
search("Fulano".toLowerCase());
Mas onde coloco o código acima para que a busca seja realizada sem que haja um botão ou um evento? (Tentei colocar no frame "resultadobusca", mas não deu certo).
Pergunta
SmarThi
Olá..
Tenho uma busca desenvolvida em Flash para buscar nos nós do XML e funciona de modo bem simples.
Funciona da seguinte forma:
Tenho um frame chamado "busca" que possui um campo de "input text" e definido em seu "var" como "word"(palavra). Na frente desse "input text" existe um botão com o código abaixo que chama a função da busca:
Ainda neste frame (chamado busca) existe todo o código referente a busca, inclusive a função "search" que é chamada por este botão. O código segue abaixo:Entretanto, depois que clica no botão acima mencionado e chama a função Search, vai para outro frame que exibe o resultado. Esse outro frame chama "resultadobusca" e tem um "Dynamic text" que exibe o Var "results" responsável pelo conteúdo da busca.
Estou tentando exibir a busca diretamente, sem que haja um campo para a pessoa digitar, no caso eu passaria o parâmetro diretamente que é o "word".
Preciso que tudo seja feito em apenas um frame, ou seja, que este frame só tenha o "Dynamic text" responsável pela exibição da busca e queria que o parâmetro ou a palavra da busca seja sempre "fulano" por exemplo.
Mais ou menos assim:
search("Fulano".toLowerCase());
Mas onde coloco o código acima para que a busca seja realizada sem que haja um botão ou um evento? (Tentei colocar no frame "resultadobusca", mas não deu certo).
Parece ser simples, mas não está dando certo.
Muito obrigado e até mais..
SmarThi
Link para o comentário
Compartilhar em outros sites
0 respostass 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.