Ir para conteúdo
Fórum Script Brasil

jfranco

Membros
  • Total de itens

    52
  • Registro em

  • Última visita

Posts postados por jfranco

  1. Bom dia,

    Alguém pode me ajudar a descobrir por que a mensagem está sendo enviada duas vezes para o mesmo endereço?

    O código do script segue abaixo:


    <%

    ' Confira as variáveis da mensagem

    strOrigem = Trim(Request.form("nome"))
    strEmailRem = Trim(Request.form("seu_e_mail"))
    strDestino = Trim(Request.form("e_mail_amigo"))
    strURL = Request.form("pagina")
    strAssunto = "Site interessante"
    strMensagem = "Acessei este site e achei interessante : " & strURL

    ' Cria os objetos para envio de e-mail

    Set mensagem = Server.CreateObject("CDO.Message")
    Set conf = Server.CreateObject("CDO.Configuration")
    Set param = conf.Fields

    param("http://schemas.microsoft.com/cdo/configuration/sendusing") = 2
    param("http://schemas.microsoft.com/cdo/configuration/smtpserver") = "localhost"
    param.Update

    Set mensagem.configuration = conf

    ' Atribui-se os valores para as propriedades do objeto

    mensagem.From = strEmailRem
    mensagem.To = strDestino
    mensagem.Cc = "jobsystems@jobsystems.com.br"
    mensagem.Subject = strAssunto
    mensagem.TextBody = strOrigem & " diz: " & strMensagem

    mensagem.Send

    ' Informa o que foi enviado
    %>
    [/codebox]

    Obrigado.

  2. Bom dia,

    Estou com uma dúvida para abrir uma janela pop-up. O código que tenho é o seguinte:

    a função que define a janela:

    &lt;script type="text/javascript">
    function novajanela(pagina, intLargura, intAltura)
    {
    var janela = null
    janela = window.open(pagina,'novajanela','toolbar=no,location=no,directories=no,status=no,menubar=no,scrollbars=yes,resizable=no,menubar=no,width=' + intLargura + ',height=' + intAltura+ '')
    }
    </script>
    [/codebox]

    a chamada da função:

    [codebox]
    <a href="java script:novajanela('<a href='http://www.adobe.com.br/products/acrobat/readstep2.html'>',800,600)">
    <img src="img/get_adobe_reader.gif" alt="" width="112" height="33" border="0">
    </a><br><br>

    Alguém pode me ajudar onde está o erro? Quando tento fazer um teste, dá um erro no script [')' esperado, linha 1, caractere 22], mas não consigo saber o que está errado.

    Obrigado.

  3. Boa noite, [na verdade, é quase bom dia... :-)]

    Pessoal, o problema é o seguinte:

    Coloquei um vbscript na minha página para contar visitas. Quando rodo na minha máquina com IIS, dá erro de permissão negada; quando rodo no host o site mostra direitinho quantas visitas foram feitas. Perguntei ao pessoal do suporte do host como consertar o problema e eles me disseram que, como já tinham uma solução automatizada para resolver o problema lá (host), eles não teriam como me dar a solução para eu resolver o problema aqui (máquina local).

    Alguém tem alguma dica de como resolver isso? Pensei que fosse somente compartilhar a pasta onde guardo o arquivo txt com a contagem de visitas que estaria resolvido mas não foi o que aconteceu.

    Abaixo, segue o código do script que conta as visitas:


    &lt;script language="VBScript">
    <%
    Caminho = Server.MapPath("/visitas/contador.txt")
    If Request.Cookies("IP")("UsuarioIP") = Request.ServerVariables("REMOTE_ADDR") Then
    Set FSO = Server.CreateObject("Scripting.FileSystemObject")
    Set Gravar = FSO.OpenTextFile(Caminho, 1, False)
    Total = Gravar.Readline
    Gravar.Close
    Set Gravar = Nothing
    Else
    Set FSO = Server.CreateObject("Scripting.FileSystemObject")
    Set Gravar = FSO.OpenTextFile(Caminho, 1, False)
    Linha = Gravar.Readline
    Total = Linha + 1
    Gravar.Close
    Set Gravar = Nothing
    Set Gravar = FSO.CreateTextFile(Caminho, True)
    Gravar.Write "" & Total
    Gravar.Close
    Set Gravar = Nothing
    End If
    Response.Cookies("IP")("UsuarioIP") = Request.ServerVariables("REMOTE_ADDR")
    %>
    </script>
    <div align="left">Total de visitas:
    <%=Total%>
    </div>
    [/codebox]

  4. Mas, Andreia, o "action" não funciona só quando tenho um formulário?

    A página "verifica.asp" não tem um formulário. É só uma página de apresentação dos dados...

    ...

    Bem, na verdade, quase consegui fazer funcionar: coloquei na página "verifica.asp" as linhas abaixo:

    <form name="email" method="post" action="resposta.asp">

    ...

    </form>

    O banco de dados está tendo um registro acrescentado, mas não estão sendo gravados os dados.

    O problema é que nesse "form" estão os Response.Write das variáveis do form da página "faleconosco.asp" que foram enviadas à página "verifica.asp" mas não foram enviadas à página "resposta.asp".

    Como faço para enviá-las?

  5. Bom dia a todos,

    Estou com um problema estranho. Primeiro vou descrever a solução que adotei e depois relato o problema que está ocorrendo.

    No meu site tenho um formulário em que o usuário preenche dados e clica no botão "Enviar". O formulário está na página "faleconosco.asp".

    Após clicar no botão, é apresentada outra página definida pela cláusula "action" do tag "form" como abaixo:

    <form name="dados" method="post" onsubmit="return VerCampo()" action="verifica.asp">

    A página "verifica.asp" apresenta os dados que o usuário digitou e lha dá duas opções: confirmar os dados ou voltar para corrigi-los.

    Se o usuário confirmar é apresentado uma terceira página ("resposta.asp") que é chamada pelo tag abaixo:

    <input type="button" name="EnviarResposta" value="Enviar" onclick="GravaDados()">

    Abaixo está o código da função chamada pelo "onclick":


    &lt;script language=JavaScript>
    function GravaDados()
    {
    <%
    Aqui vai o código de gravação dos dados num banco de dados.
    Não há problemas com isto: os dados estão sendo gravados corretamente...
    %>
    window.location.href = 'resposta.asp'
    return true
    }
    </script>
    [/codebox]

    O problema é que, ao confirmar os dados, o site não está mostrando a página "resposta.asp", mas os dados estão sendo gravados corretamente.

    Alguém pode me ajudar a descobrir onde está o erro?

    Obrigado.

  6. A idéia é a seguinte:

    Em um formulário, o usuário digita os dados que serão gravados no banco de dados, tipo empresa, nome, e-mail. Daí, após digitar os dados, o usuário clica no botão "Enviar"; os dados são enviados a uma página e são exibidos com <%Response.Write "" & Request.Form("empresa")%>, por exemplo. Se o usuário quiser corrigir algum dado, clica no botão "Voltar", senão clica no botão "Enviar" como abaixo:

    <input type="button" name="EnviarResposta" value="Enviar" onclick="GravaDados()">

    A rotina GravaDados() gera um novo registro e grava os campos; daí aparece um alert tipo abaixo:

    alert("Dados gravados com sucesso!\n\nAperte o botão 'Voltar' do seu navegador ou escolha uma das opções do Menu.\n\nObrigado.");

    Acontece que ao clicar no botão "Ok" do alert volta-se para a página onde os dados estavam sendo apresentados e eu gostaria que fosse apresentada apenas algo do tipo:

    Agradecemos seu contato.

    Em breve, atenderemos sua solicitação.

    Cordialmente,

    blá, blá, blá, em uma página semelhante a qualquer página do site...

    Algo como uma cláusula "action=..." num form.

    Ficou claro agora?

  7. Boa tarde,

    O problema é o seguinte:

    Preciso abrir uma página com texto para avisar ao usuário que a gravação de dados foi concluída com êxito.

    A rotina de gravação é executada quando o usuário clica em um botão como abaixo:

    <input type="button" name="EnviarResposta" value="Enviar" onclick="GravaDados()">

    A rotina de gravação de dados está abaixo:

    &lt;script language=JavaScript>
    function GravaDados()
    {
    <%
    Dim conJobSystems
    Dim rsJobSystems
    Dim SQLInsert

    Set conJobSystems = Server.CreateObject("ADODB.Connection")
    Set rsJobSystems = Server.CreateObject("ADODB.Recordset")

    conJobSystems.Provider = "Microsoft.Jet.OLEDB.4.0"
    conJobSystems.ConnectionString = Server.MapPath("\Dados\JobSystems.mdb")

    conJobSystems.Open

    rsJobSystems.Activeconnection = conJobSystems
    rsJobSystems.Cursortype = adOpenkeyset
    %>

    <!-- #include file="Include/Adovbs.inc"-->

    <%
    rsJobSystems.Locktype = adlockOptimistic
    rsJobSystems.Source = "TabClie"

    SQLInsert = "Insert Into TabClie (EmpClie, NomeClie, CargoClie, EnderecoClie, EstadoClie, EmailClie, MensClie)"
    SQLInsert = SQLInsert & " Values ("
    SQLInsert = SQLInsert & "'" & Request.Form("empresa") & "',"
    SQLInsert = SQLInsert & "'" & Request.Form("nome") & "',"
    SQLInsert = SQLInsert & "'" & Request.Form("cargo") & "',"
    SQLInsert = SQLInsert & "'" & Request.Form("endereco") & "',"
    SQLInsert = SQLInsert & "'" & Request.Form("estado") & "',"
    SQLInsert = SQLInsert & "'" & Request.Form("e_mail") & "',"
    SQLInsert = SQLInsert & "'" & Request.Form("msg") & "')"

    conJobSystems.Execute(SQLInsert)

    conJobSystems.Close

    Set rsJobSystems = Nothing
    Set conJobSystems = Nothing
    %>

    alert("Dados gravados com sucesso!\n\nAperte o botão 'Voltar' do seu navegador ou escolha uma das opções do Menu.\n\nObrigado.");

    return true
    }
    </script>
    [/codebox]

    Como posso fazer para, após gravar os dados, em vez de abrir o "alert" (pois isso obriga o usuário a clicar num botão e volta para a mesma página onde os dados estavam sendo apresentados), abrir uma nova página com um texto avisando que foi tudo bem, etc, etc?

    Obrigado.

  8. Na verdade, acabei me tocando que eu mesmo fiz uma burrada: no código acima, aquelas variáveis que estão no bloco abaixo:

    SQLInsert = "Insert Into TabClie (EmpClie, NomeClie, CargoClie, EnderecoClie, EstadoClie, EmailClie, MensClie)"
    SQLInsert = SQLInsert & " Values ("
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("empresa")) & "',"
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("nome")) & "',"
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("cargo")) & "',"
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("endereco")) & "',"
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("estado")) & "',"
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("e_mail")) & "',"
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("msg")) & "')"[/codebox]

    vieram de outro formulário. Aí, acabei me mancando e percebi que esqueci de "enviá-las" da página "verifica.asp" para a página "resposta.asp". O único problema é que em "verifica.asp" não existe um 'form' para enviar os dados como acontece com as variáveis da página "verifica.asp" que foram recebidas da página "faleconosco.asp" onde há um 'form'.

    Está claro agora o problema? Se alguém puder me dar uma dica, agradeço.

  9. Boa tarde,

    Estou tendo problemas na inserção de um novo registro em uma tabela do Access.

    O código que uso é o seguinte:

    <%	
    Dim conJobSystems
    Dim rsJobSystems
    Dim SQLInsert
    Dim BancoDados

    Set conJobSystems = Server.CreateObject("ADODB.Connection")
    Set rsJobSystems = Server.CreateObject("ADODB.Recordset")

    conJobSystems.Provider = "Microsoft.Jet.OLEDB.4.0"
    conJobSystems.ConnectionString = Server.MapPath("\Dados\JobSystems.mdb")

    conJobSystems.Open

    rsJobSystems.Activeconnection = conJobSystems
    rsJobSystems.Cursortype = adOpenkeyset
    %>

    <!-- #include file="Include/Adovbs.inc"-->

    <%
    rsJobSystems.Locktype=adlockOptimistic
    rsJobSystems.Source="TabClie"

    SQLInsert = "Insert Into TabClie (EmpClie, NomeClie, CargoClie, EnderecoClie, EstadoClie, EmailClie, MensClie)"
    SQLInsert = SQLInsert & " Values ("
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("empresa")) & "',"
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("nome")) & "',"
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("cargo")) & "',"
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("endereco")) & "',"
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("estado")) & "',"
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("e_mail")) & "',"
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("msg")) & "')"

    conJobSystems.Execute(SQLInsert)

    conJobSystems.Close

    Set BancoDados = Nothing
    Set rsJobSystems = Nothing
    Set conJobSystems = Nothing
    %>
    [/codebox]

    O problema é que está criando registros cujos campos ficam em branco.

    Alguém pode me ajudar a descobrir o que há de errado no código acima?

    Obrigado.

  10. Boa noite,

    Estou tentando fazer a seguinte gravação de dados em Access:


    <%
    Dim conJobSystems
    Dim rsJobSystems
    Dim SQLInsert
    Dim BancoDados

    Set conJobSystems = Server.CreateObject("ADODB.Connection")
    Set rsJobSystems = Server.CreateObject("ADODB.Recordset")

    conJobSystems.Provider = "Microsoft.Jet.OLEDB.4.0"
    conJobSystems.ConnectionString = Server.MapPath("\Dados\JobSystems.mdb")

    conJobSystems.Open

    SQLInsert = "Insert Into TabClie (EmpClie, NomeClie, CargoClie, EnderecoClie, EstadoClie, EmailClie, MensClie)"
    SQLInsert = SQLInsert & " VALUES ("
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("empresa")) & "',"
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("nome")) & "',"
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("cargo")) & "',"
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("endereco")) & "',"
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("estado")) & "',"
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("e_mail")) & "',"
    SQLInsert = SQLInsert & "'" & Server.HTMLEncode(Request.FORM("msg")) & "')"

    conJobSystems.Execute(SQLInsert)

    rsJobSystems.close
    conJobSystems.Close

    Set BancoDados = Nothing
    Set rsJobSystems = Nothing
    Set conJobSystems = Nothing
    %>
    [/codebox]

    Os dados são obtidos de um formulário como abaixo:

    [codebox]
    <form name="dados" method="post" onsubmit="return VerCampo()" action="verifica.asp">
    <table align="center" cellspacing="0" cellpadding="10%" border="0">
    <span class="style47">
    <font size="1">
    <tr>
    <td colspan="4" align="center"><span class="style48">
    <div align="center">
    Informe seus dados e inclua sua mensagem.
    </div>
    </td>
    </tr>
    <tr>
    <td align="right"><span class="style48">Empresa:</td>
    <td colspan="2">
    <input name="empresa" size="45" type="text" maxlength=50>
    </td>
    <td rowspan="5">
    <textarea rows=15 cols=36 name="msg"></textarea>
    </td>
    </tr>
    <tr>
    <td align="right"><span class="style48">Nome:</td>
    <td colspan="2">
    <input name="nome" size="40" type="text" maxlength=40 onblur="Required(this)">
    <font size="4" color="#ff0000">*</font>
    </td>
    </tr>
    <tr>
    <td align="right"><span class="style48">Cargo:</td>
    <td colspan="2">
    <input name="cargo" size="30" type="text" maxlength=30>
    </td>
    </tr>
    <tr>
    <td align="right"><span class="style48">Endereço:</td>
    <td>
    <input name="endereco" size="20" type="text" maxlength=40>
    </td>
    <td align="left"><span class="style48">Estado:
    <select name="estado">
    <option value=" "> </option>
    <option value="AC" >AC</option>
    <option value="AL" >AL</option>
    <option value="AM" >AM</option>
    <option value="AP" >AP</option>
    <option value="BA" >BA</option>
    <option value="CE" >CE</option>
    <option value="DF" >DF</option>
    <option value="ES" >ES</option>
    <option value="GO" >GO</option>
    <option value="MA" >MA</option>
    <option value="MG" >MG</option>
    <option value="MS" >MS</option>
    <option value="muito" >muito</option>
    <option value="PA" >PA</option>
    <option value="PB" >PB</option>
    <option value="PE" >PE</option>
    <option value="PI" >PI</option>
    <option value="PR" >PR</option>
    <option value="RJ" >RJ</option>
    <option value="RN" >RN</option>
    <option value="RO" >RO</option>
    <option value="RR" >RR</option>
    <option value="RS" >RS</option>
    <option value="SC" >SC</option>
    <option value="SE" >SE</option>
    <option value="SP" >SP</option>
    <option value="TO" >TO</option>
    </select>
    </td>
    </tr>
    <tr>
    <td align="right"><span class="style48">e-mail:</td>
    <td colspan="2">
    <input name="e_mail" size="45" type="text" maxlength=65 onblur="Required(this)">
    <font size="4" color="#ff0000">*
    </td>
    </tr>
    <tr>
    <td colspan="3" align="left"><span class="style48">
    <font size="4" color="#ff0000">* </font>
    Campos obrigatórios
    </td>
    <td align="left">
    <div align="center">
    <input name="Enviar" type="submit" value="Enviar">

    <input name="Apagar" type="reset" value="Apagar">
    </div>
    </td>
    </tr>
    </font>
    </span>
    </table>
    </form>

    O erro que aparece é o seguinte:

    Tipo de erro:

    Microsoft JET Database Engine (0x80004005)

    A operação deve usar uma consulta atualizável.

    /jobsystems/resposta.asp, line 39

    A linha 39 mencionada acima é:

    conJobSystems.Execute(SQLInsert)

    Alguém pode me ajudar a entender o que está acontecendo? Obrigado.

  11. Obrigado, Andreia, funcionou.

    Mas, ainda em relação à mesma página: estou enviando os dados para uma página onde os dados são apresentados para confirmação. Se houver necessidade de alterá-los, o usuário clica no botão "Voltar", altera-os e envia de novo. Só que, ao clicar no botão "Voltar", os dados que estavam no formulário "somem". O que devo fazer para que eles permaneçam lá?

  12. Boa tarde,

    Tenho uma página cujo código reproduzo abaixo:


    <html>

    <head>
    &lt;script language="JavaScript">
    <!-- Função que verifica o preenchimento de um campo -->
    function Required(campo)
    { if (campo.value == "")
    {
    alert(campo.name + " obrigatório! Por favor, preencha-o.")
    campo.focus();
    return false;
    }
    }
    <!-- Função que verifica se os campos "nome" e "e-mail" foram preenchidos antes de enviar o formulário -->
    function VerCampo()
    {
    if (document.dados.Nome.value == "")
    {
    alert("Nome em branco. Por favor, preencha-o.");
    document.dados.Nome.focus();
    return false;
    }
    if (document.dados.e_mail.value == "")
    {
    alert("e-mail em branco. Por favor, preencha-o.");
    document.dados.e_mail.focus();
    return false;
    }
    if (/^\w+([\.-]?\w+)*@\w+([\.-]?\w+)*(\.\w{2,3})+$/.test(document.dados.e_mail.value))
    {
    return true;
    }
    alert("e-mail inválido! Por favor, preencha-o novamente.");
    document.dados.e_mail.focus();
    return false;

    return true
    }
    </script>
    <title>JobSystems Informática - Fale Conosco</title>
    </head>
    <body>
    ...
    <form name="dados" method="post" onsubmit="return VerCampo()" action="resposta.asp">
    <table align="center" cellspacing="0" cellpadding="10%" border="0">
    <font size="1">
    <tr>
    <td align="right">Empresa:</td>
    <td colspan="2">
    <input name="empresa" size="45" type="text" maxlength=50>
    </td>
    </tr>
    <tr>
    <td align="right">Nome:</td>
    <td colspan="2">
    <input name="nome" size="40" type="text" maxlength=40 onblur="Required(this)">
    </td>
    </tr>
    <tr>
    <td align="right">Cargo:</td>
    <td colspan="2">
    <input name="cargo" size="30" type="text" maxlength=30>
    </td>
    </tr>
    <tr>
    <td align="right">Endereço:</td>
    <td>
    <input name="endereco" size="20" type="text" maxlength=40>
    </td>
    </tr>
    <tr>
    <td align="right">e-mail:</td>
    <td colspan="2">
    <input name="e_mail" size="45" type="text" maxlength=65 onblur="Required(this)">
    </td>
    </tr>
    <tr>
    <td align="left">
    <input name="Enviar" type="submit" value="Enviar">
    <input name="Apagar" type="reset" value="Apagar">
    </td>
    </tr>
    </font>
    </span>
    </table>
    </form>
    ...
    </body>
    </html>
    [/codebox]

    Não sei porque, a função de validação VerCampo() não está funcionando quando pressiono o botão enviar: se os campos nome e e-mail não estiverem preenchidos deve aparecer uma mensagem para o usuário não esquecer de preenchê-los. Mas está aceitando campos em branco. Isso passou a acontecer depois que modifiquei o formulário de resposta (arquivo resposta.asp) e coloquei alguns Response.Write com os dados digitados para o usuário confirmá-los ou voltar à página anterior e fazer as alterações necessárias. Tem alguma coisa a ver? Obrigado e abraços.

  13. Cavotta,

    Já matei a charada: esqueci de que no if a comparação é com == e não com =.

    Obrigado.

    Boa Tarde.

    Jfranco, o que penso é que

    window.document.location não retorna uma string, por isso o método lastIndexOf() não existe.

    Se quiser uma string, use

    window.document.location.href

    Boa tarde, Cavotta

    Fiz o que você sugeriu e funcionou em parte. Veja o que aconteceu: ao completar o if fiz um teste para ver se iria funcionar como eu quero. Fiz assim:

    <script type="text/javascript">

    var endereco = window.document.location.href;

    var tamanho = endereco.length;

    var numero = endereco.lastIndexOf("/");

    var pagina = endereco.substring(numero+1,tamanho);

    if (pagina = "index.asp")

    {

    document.write("<li >Home</li>");

    document.write("<li ><a href="+"empresa.asp"+">Empresa</a></li>");

    document.write("<li ><a href="+"produtos.asp"+">Produtos</a></li>");

    document.write("<li ><a href="+"servicos.asp"+">Serviços</a></li>");

    document.write("<li ><a href="+"noticias.asp"+">Notícias</a></li>");

    document.write("<li ><a href="+"faleconosco.asp"+">Fale conosco</a></li>");

    }

    else

    if (pagina = "empresa.asp")

    {

    document.write("<li ><a href="+"index.asp"+">Home</a></li>");

    document.write("<li >Empresa</li>");

    document.write("<li ><a href="+"produtos.asp"+">Produtos</a></li>");

    document.write("<li ><a href="+"servicos.asp"+">Serviços</a></li>");

    document.write("<li ><a href="+"noticias.asp"+">Notícias</a></li>");

    document.write("<li ><a href="+"faleconosco.asp"+">Fale conosco</a></li>");

    }

    </script>

    Veja: quando o usuário está na página index.asp o item de menu aparece só como texto e o resto devem ser links, quando ele estiver na página empresa.asp o item de menu deveria aparecer como texto mas está igual ao anterior. O que pode estar errado?

    Abraços

  14. Boa Tarde.

    Jfranco, o que penso é que

    window.document.location não retorna uma string, por isso o método lastIndexOf() não existe.

    Se quiser uma string, use

    window.document.location.href

    Boa tarde, Cavotta

    Fiz o que você sugeriu e funcionou em parte. Veja o que aconteceu: ao completar o if fiz um teste para ver se iria funcionar como eu quero. Fiz assim:

    <script type="text/javascript">

    var endereco = window.document.location.href;

    var tamanho = endereco.length;

    var numero = endereco.lastIndexOf("/");

    var pagina = endereco.substring(numero+1,tamanho);

    if (pagina = "index.asp")

    {

    document.write("<li >Home</li>");

    document.write("<li ><a href="+"empresa.asp"+">Empresa</a></li>");

    document.write("<li ><a href="+"produtos.asp"+">Produtos</a></li>");

    document.write("<li ><a href="+"servicos.asp"+">Serviços</a></li>");

    document.write("<li ><a href="+"noticias.asp"+">Notícias</a></li>");

    document.write("<li ><a href="+"faleconosco.asp"+">Fale conosco</a></li>");

    }

    else

    if (pagina = "empresa.asp")

    {

    document.write("<li ><a href="+"index.asp"+">Home</a></li>");

    document.write("<li >Empresa</li>");

    document.write("<li ><a href="+"produtos.asp"+">Produtos</a></li>");

    document.write("<li ><a href="+"servicos.asp"+">Serviços</a></li>");

    document.write("<li ><a href="+"noticias.asp"+">Notícias</a></li>");

    document.write("<li ><a href="+"faleconosco.asp"+">Fale conosco</a></li>");

    }

    </script>

    Veja: quando o usuário está na página index.asp o item de menu aparece só como texto e o resto devem ser links, quando ele estiver na página empresa.asp o item de menu deveria aparecer como texto mas está igual ao anterior. O que pode estar errado?

    Abraços

  15. Boa tarde,

    Estou tentando fazer o seguinte:

    <script type="text/javascript">

    var pagina = window.document.location;

    numero = pagina.lastIndexOf("/");

    ...

    e aí recebo uma mensagem do tipo:

    "O objeto não dá suporte para a propriedade ou método"

    na última linha do código acima.

    O que quero é identificar a posição da última barra (entre Include e menu_lateral.inc) no string abaixo:

    "file:///C:/JobSystems/Projeto%20site/Include/menu_lateral.inc"

    Alguém pode me ajudar a entender o que está errado?

    Obrigado.

×
×
  • Criar Novo...