submit_tag com :disable_with

6 views
Skip to first unread message

Luciano Bezerra

unread,
Nov 11, 2009, 4:47:41 PM11/11/09
to rails-br

Colegas Boa Noite!

Estou precisando fazer com que o form não seja submetido se um
determinado campo estiver com conteúdo inválido ou vazio.

Dei uma olhada nos exemplos da documentação do submit_tag
com :disable_with mas nada que se aplique ao meu caso.

a View é essa:
<%= render :partial => "titulo" %>

<% form_tag(report_output_path, :method => "get", :class =>
"filtro_de_relatorio", :id => 'form_filtro') do %>

<%= render :partial => "variaveis" %>

<div class="filtro_de_dados">
<%= label_tag(:id, 'Código Cliente: ') %>
<%= text_field_tag(:id) %><br/>
</div>

<%= render :partial => "saida_padrao" %>

<%= submit_tag "OK", :disable_with => AQUI DEVE VIR A VALIDAÇÃO %>
<% end %>

Alguém poderia indicar um caminho?

[]'s

Luciano Bezerra
Iguatu/CE

Allam Marcos Campanini Matsubara

unread,
Nov 11, 2009, 10:48:36 PM11/11/09
to rail...@googlegroups.com
Acho que o que você quer, na verdade, não é o disable_with, mas sim alguns validates no seu model. Salvo você queira mostrar pro usuário que o dado está incorreto sem recarregar a página, ai eu recomendária a você usar javascript. De uma olhada na documentação dos validates: http://guides.rubyonrails.org/activerecord_validations_callbacks.html

Abraço,

2009/11/11 Luciano Bezerra <luciano...@gmail.com>



--
Allam Marcos Campanini Matsubara
Graduando do curso de Ciência da Computação pela UFPR(Universidade Federal do Paraná)
2º Tesoureiro do CEI(Centro de Estudos de Informática)

/"\  Fita Ascii contra email HTML
\ /  ASCII Ribbon Campaign
 X   against HTML email
/ \

Luciano Bezerra

unread,
Nov 12, 2009, 5:35:44 AM11/12/09
to rails-br
Bom Dia!

Eu não soube me expressar, logo você não entendeu o que eu quis dizer:

A minha necessidade é evitar que o form seja submetido se o input
nomeado como :id não estiver preenchido. Mando via get o valor
desse :id para o jasper para gerar um relatório.

Resolvi da seguinte maneira:

Criei a function:
function verifica(){
var codigo = document.getElementById('id');
if(codigo.value == ''){
alert("Informe ou Selecione o Cliente Desejado.");
codigo.focus();
return false;
}
return true;
}

no submit_tag ficou assim:
<%= submit_tag "OK", :onclick => "return verifica()" %>


Fica a dica para quem algum dia precisar.

[]'s

Luciano Bezerra

On 12 nov, 00:48, Allam Marcos Campanini Matsubara
<allam.matsub...@gmail.com> wrote:
> Acho que o que você quer, na verdade, não é o disable_with, mas sim alguns
> validates no seu model. Salvo você queira mostrar pro usuário que o dado
> está incorreto sem recarregar a página, ai eu recomendária a você usar
> javascript. De uma olhada na documentação dos validates:http://guides.rubyonrails.org/activerecord_validations_callbacks.html
>
> Abraço,
>
> 2009/11/11 Luciano Bezerra <lucianobese...@gmail.com>
Reply all
Reply to author
Forward
0 new messages