Un campo di immissione di testo memorizza una stringa come valore e una stringa come testo. È è sempre una stringa valida, mentre il suo testo può essere qualsiasi stringa inserita il suo editor.
Campo di immissione testo
Campo di immissione testo con editor aperto
Campo di immissione testo sul blocco compresso
Creazione
JSON
{
"type": "example_textinput",
"message0": "text input: %1",
"args0": [
{
"type": "field_input",
"name": "FIELDNAME",
"text": "default text",
"spellcheck": false
}
]
}
JavaScript
Blockly.Blocks['example_textinput'] = {
init: function() {
this.appendDummyInput()
.appendField("text input:")
.appendField(new Blockly.FieldTextInput('default text'),
'FIELDNAME');
}
};
Il costruttore di input di testo accetta un valore facoltativo e un valore facoltativo
strumento di convalida. Il valore deve essere trasmesso a un
stringa. Se è null
o undefined
, verrà utilizzata una stringa vuota.
La definizione JSON consente anche di impostare l'opzione spellcheck.
Serializzazione e XML
JSON
Il JSON per un campo di immissione di testo ha il seguente aspetto:
{
"fields": {
"FIELDNAME": "text"
}
}
dove FIELDNAME
è una stringa che fa riferimento a un campo di immissione di testo e
il valore è il valore da applicare al campo. Il valore
segue le stesse regole del valore del costruttore.
XML
L'XML per un campo di immissione di testo ha il seguente aspetto:
<field name="FIELDNAME">text</field>
In cui l'attributo name
del campo contiene una stringa che fa riferimento a un input di testo
e il testo interno è il valore da applicare al campo. La parte interna
il valore di testo segue le stesse regole del valore del costruttore.
Personalizzazione
Controllo ortografico
La setSpellcheck può essere utilizzata per stabilire se il campo esegue o meno il controllo ortografico del testo di input.
Campi di immissione testo con e senza controllo ortografico
Il controllo ortografico è attivo per impostazione predefinita.
Questo vale per i singoli campi. Se vuoi modificare tutti i campi, modifica
Blockly.FieldTextInput.prototype.spellcheck_
proprietà.
Creazione di uno strumento di convalida dell'input di testo
Il valore di un campo di immissione di testo è una stringa, quindi tutti gli strumenti di convalida devono accettare una stringa
e restituiscono una stringa, null
o undefined
.
Ecco un esempio di uno strumento di convalida che rimuove tutti i caratteri "a" caratteri da stringa:
function(newValue) {
return newValue.replace(/a/g, '');
}