#BOUTON_ACTION

A tag #BOUTON_ACTION{label, url, classe, confirm_message} produz a fonte HTML completa de um formulário (método POST) contendo apenas um botão do tipo enviar.

  • Apparu en : SPIP 2.1

Esta tag permite transmitir argumentos a um URL graças a um pseudo-link não rastreável por um robot (os rotots não «clicam» num botão submit). É particularmente útil no quadro de um URL que direciona para um script de intervenção sobre os dados na base. Neste caso, é necessário proteger o link para esse URL de qualquer risco de ser seguido por um robot.
#BOUTON_ACTION existe para isso.

A tag a usar é:

#BOUTON_ACTION{label, url, classe, mensagem de confirmação}

O primeiro argumento indica o label do botão.

O segundo argumento, url, pode ser fornecido pela tag #URL_ACTION_AUTEUR.

O terceiro argumento, opcional, é o nome de uma classe CSS ou de um conjunto de classes CSS, aplicáveis ao botão; aplicar a classe «ajax» permite ao botão comportar-se como um link ajax; em conjunto com a classe «noscroll», a chamada ajax é feita sem que o navegador role para o topo da página.

Após o SPIP 4.0, se esse argumento contiver ’ajax’, é ao formulário que contém o botão que a classe ’ajax’ fica vinculada. Se necessário, pode-se usar o filtro |ajouter_class para atribuir outras classes ao formulário.

O quarto argumento, opcional, permite especificar a mensagem de confirmação exibida na validação do botão.

-  Atenção:

  • se quiser especificar uma mensagem de confirmação, deve também usar o terceiro argumento: #BOUTON_ACTION{label, url, mensagem de confirmação} não funcionará corretamente («mensagem de confimação» será passada como nome de classe CSS). Para especificar uma mensagem de confirmação sem especificar classe CSS, escreva:
    #BOUTON_ACTION{label, url, '', mensagem de confirmação}
    
  • Se usar caracteres acentuados na sua mensagem de confirmação, deve convertê-los na referência numérica do caracter (é => é).

Exemplo:

#BOUTON_ACTION{validar, #URL_PAGE{meu_script}|parametre_url{var1, val1}|parametre_url{var2, val2}|parametre_url{var3, val3}, ajax, está seguro?}

produzirá a fonte HTML a seguir:

<form class='bouton_action_post ajax' method='post' action='./?page=meu_script&var1=val1&var2=val2&var3=val3'>
<div>
  <input name="page" value="mon_script" type="hidden" />
  <input name="var1" value="val1" type="hidden" />
  <input name="var2" value="val2" type="hidden" />
  <input name="var3" value="val3" type="hidden" />
  <button type='submit' class='submit' onclick='return confirm("está seguro?");'>validar</button>
</div>
</form>

O quinto argumento, facultativo, é o title do botão

O sexto argumento, facultativo, é um callback no onclick da tag gerada. Um exemplo pode ser encontrado na documentação de ajaxReload.

Ver também

A função balise_BOUTON_ACTION_dist que acrescenta mais alguns esclarecimentos sobre a tag homónima.

Autor Ricardo Porto Publié le :

Traductions : català, English, français, Nederlands, Português