Campi nascosti in un form lotus quando si accede con un browser

In un form lotus si possono nascondere i campi spuntando nella finestra delle proprietà del campo il check box “Hide paragraph from Web browser” ma in questo modo il campo non è generato come campo nascosto, cioè non è generato un tag html input con attributo type=”hidden” ed è quindi impossibile accederne al valore dal browser, ad esempio mediante javascript.
Questo è un comportamento differente da quanto succede utilizzando un client lotus dove i campi nascosti sono comunque accessibili usando lotusscript e le formule.
Puoi verificare questo creando un form lotus con un campo di nome “MyHiddenField” di tipo Text e Editable con valore di default “I am a hidden field” e con proprietà
hidden field properties
e aggiungi un pulsante di tipo Web JavaScript con codice

Se apri il modulo in un browser puoi verificare che premendo il pulsante il valore del campo non è visualizzato perchè “document.forms[0].MyHiddenField is undefined”; infatti il codice sorgente della pagina html è:

dove non esiste nessun tag “input” con name “MyHiddenField”.
Per forzare domino a generare il codice html anche per i campi nascosti puoi spuntare la check box “generate HTML for all fields” nella seconda etichetta delle proprietà del modulo, come vedi in figura:
generate html
Questo metodo ha però lo svantaggio di creare il codice html per tutti i campi nascosti compresi quei campi che è inutile passare al browser perché non utilizzati o, peggio ancora, quei campi che per motivi di sicurezza non si vogliono passare al browser.
Se preferisci decidere quali campi passare al browser allora hai 2 possibilità:

  1. per campi editabili puoi aggiungere al campo la proprietà
    type=”hidden”

    • o inserendola in HTML Attributes come in figura (nota l’uso del carattere \ come carattere di escape)
      html attributes
    • o inserendola nelle proprietà del campo
      html attribute properties
  2. per campi calcolati, prima del campo inserisci
    <input type=”hidden” name=”MyHiddenField” value=”
    e dopo il campo inserisci
    ” />
    quindi seleziona tutto il testo e dal menù di lotus sotto la voce Text attiva il “Pass-Thru HTML”; il risultato finale appare:
    pass thru html

Puoi verificare che utilizzando uno di questi metodi il campo “MyHiddenField” pur essendo nascosto è comunque accessibile via javascript.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.