Ir para conteúdo
Fórum Script Brasil

SmarThi

Membros
  • Total de itens

    1
  • Registro em

  • Última visita

Sobre SmarThi

SmarThi's Achievements

0

Reputação

  1. 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: on(release, keyPress "<Enter>") { search(word.toLowerCase()); } 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). Parece ser simples, mas não está dando certo. Muito obrigado e até mais.. SmarThi
×
×
  • Criar Novo...