none
Verificar Java Script

    Pergunta

  • Bom dia pessoal, tenho a seguinte necessidade: Estou desenvolvendo um sistema com interface bastante interativa com o usuário. Todavia, se ele tiver com o JS desabilitado no navegador a parada não rola. Sabendo disto eu posso fazer a verificação e redirecionar ele para uma página e informá-lo da necessidade de ativar o JS e só então dar prosseguimento. Todavia, não quero impedi-lo de utilizar o sistema pelo fato do JS estar desabilitado. Em caso do JS estar desabilitado, farei as validações no servidor mesmo. Mas preciso por exemplo mandar uma mensagem de validação para o mesmo informando de possíveis erros em campos como formatos de datas etc...(sendo que esta mensagem não vai ser em caixa de mensagem toda estilizada e tal e sim em num label já que o JS está desabilitado)  A minha duvida é: existe algum padrão para isto? alguém já sentiu esta necessidade?. Se puderem dar uma orientação eu agradeço.
    Pog, I'm your Father.
    quarta-feira, 28 de dezembro de 2011 12:32

Todas as Respostas

  • Em caso do JS estar desabilitado, farei as validações no servidor mesmo. 

    Você não está validando no servidor se o javascript no cliente estiver desabilitado??? totalmente errado cara... você deve validar mesmo se o javascript estiver habilitado.


    http://www.linkedin.com/pub/murilo-kunze/44/191/455
    quarta-feira, 28 de dezembro de 2011 16:17
  • Boa tarde Jair,

     

    Já passei pela mesma necessidade, mas cheguei a conclusão que, é obrigatório o uso do javascript.

    Não apenas pela praticidade em "não" desenvolver uma tomada de ação nova, mas sim pelo peso que ela iria representar no projeto.

    Além de estar preparado para ambos os ambientes, o seu tempo de desenvolvimento é elevado, diminui a produtividade, requer mais do servidor já que algumas tomadas poderiam estar sendo feitas pelo cliente, etc.

    No meu caso se tornou ainda mais necessário pelo fato de usarmos muito Ajax, como em autocompletes e conceitos de Snapshots, onde carrego apenas partials e não paginas inteiras, diminuindo consumo de banda.

    São manobras variadas para cada cenário, como uso Cloud e o trafego é monitorado, tenho que otimizar.

    Avalie a quantidade de clientes com o recurso desabilitado, se o número for insignificante, vale a pela mudar o foco.

     

    Abraços!

     

     


    Atenciosamente Fernando Henrique Silva www.metaora.com.br
    quarta-feira, 28 de dezembro de 2011 16:18
  • A resposta é simples:

    Independentemente do Javascript estar habilitado ou não, as validações do lado do servidor sempre deverão ocorrer.

     

    Inclusive, os próprios componentes de validação do ASP.NET, como o RequiredFieldValidator e RangeValidator (que herdam de BaseValidator), sempre validam do lado do cliente via Javascript caso o mesmo esteja habilitado, e, independentemente do javascript estar habilitado ou não, eles sempre validam do lado do servidor.

     

    http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.requiredfieldvalidator.aspx

     

    É muito bom ter a validação do lado do cliente para melhorar a interatividade da aplicação com o usuário, evitando sempre de ter que recarregar a tela etc... e mesmo que a validação seja feita via ajax, evitamos de fazer muitas requisições adicionais sem necessidade, já que a validação ocorrerá de toda forma no final no servidor.

    De toda forma, é sempre interessante informar ao usuário que o JS está desabilitado e que sua experiência com a aplicação será mais agradável/interativa ativando-o.

     


    Virtual Group - Soluções Inteligentes www.virtualgroup.com.br

    quarta-feira, 28 de dezembro de 2011 19:42
  • Em caso do JS estar desabilitado, farei as validações no servidor mesmo. 

    Você não está validando no servidor se o javascript no cliente estiver desabilitado??? totalmente errado cara... você deve validar mesmo se o javascript estiver habilitado.


    http://www.linkedin.com/pub/murilo-kunze/44/191/455
    Vlw pelo toque, mas independente de estar ou não. Eu valido ele no Server Side sim. Obrigado pela dica!

    Pog, I'm your Father.
    quarta-feira, 28 de dezembro de 2011 20:00
  • Boa tarde Jair,

     

    Já passei pela mesma necessidade, mas cheguei a conclusão que, é obrigatório o uso do javascript.

    Não apenas pela praticidade em "não" desenvolver uma tomada de ação nova, mas sim pelo peso que ela iria representar no projeto.

    Além de estar preparado para ambos os ambientes, o seu tempo de desenvolvimento é elevado, diminui a produtividade, requer mais do servidor já que algumas tomadas poderiam estar sendo feitas pelo cliente, etc.

    No meu caso se tornou ainda mais necessário pelo fato de usarmos muito Ajax, como em autocompletes e conceitos de Snapshots, onde carrego apenas partials e não paginas inteiras, diminuindo consumo de banda.

    São manobras variadas para cada cenário, como uso Cloud e o trafego é monitorado, tenho que otimizar.

    Avalie a quantidade de clientes com o recurso desabilitado, se o número for insignificante, vale a pela mudar o foco.

     

    Abraços!

     

     


    Atenciosamente Fernando Henrique Silva www.metaora.com.br

    Chegamos a conclusão hoje que realmente é necessário utilizar sim o JS. Caso esteja desabilitado redirecionamos o cliente para uma página informando-o da necessidade de habilitar o JS. Vlw pela dica aí cara. Foi realmente útil

    Pog, I'm your Father.
    quarta-feira, 28 de dezembro de 2011 20:01
  • A resposta é simples:

    Independentemente do Javascript estar habilitado ou não, as validações do lado do servidor sempre deverão ocorrer.

     

    Inclusive, os próprios componentes de validação do ASP.NET, como o RequiredFieldValidator e RangeValidator (que herdam de BaseValidator), sempre validam do lado do cliente via Javascript caso o mesmo esteja habilitado, e, independentemente do javascript estar habilitado ou não, eles sempre validam do lado do servidor.

     

    http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.requiredfieldvalidator.aspx

     

    É muito bom ter a validação do lado do cliente para melhorar a interatividade da aplicação com o usuário, evitando sempre de ter que recarregar a tela etc... e mesmo que a validação seja feita via ajax, evitamos de fazer muitas requisições adicionais sem necessidade, já que a validação ocorrerá de toda forma no final no servidor.

    De toda forma, é sempre interessante informar ao usuário que o JS está desabilitado e que sua experiência com a aplicação será mais agradável/interativa ativando-o.

     


    Virtual Group - Soluções Inteligentes www.virtualgroup.com.br


    Obrigado pela informação companheiro. Mas como informei ao colega Fernando Henrique Silva decidimos forçar o uso do JS sim. E é claro, sempre haverá validação Server Side.


    Pog, I'm your Father.
    quarta-feira, 28 de dezembro de 2011 20:04