In einem Texteingabefeld wird ein String als Wert und ein String als Text gespeichert. Das value ist immer eine gültige Zeichenfolge, sein Text kann jedoch eine beliebige Zeichenfolge sein, die in des Herausgebers.
Texteingabefeld
Texteingabefeld mit geöffnetem Editor
Texteingabefeld auf minimiertem Block
Erstellung
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');
}
};
Der Texteingabekonstruktor übernimmt einen optionalen Wert und einen optionalen
validator zu haben. Der Wert sollte in einen
. Bei null
oder undefined
wird ein leerer String verwendet.
In der JSON-Definition können Sie auch die Option spellcheck festlegen.
Serialisierung und XML
JSON
Die JSON-Datei für ein Texteingabefeld sieht so aus:
{
"fields": {
"FIELDNAME": "text"
}
}
Dabei ist FIELDNAME
ein String, der auf ein Texteingabefeld verweist, und
Wert ist der Wert, der auf das Feld angewendet werden soll. Der Wert
folgt denselben Regeln wie der Konstruktorwert.
XML
Der XML-Code für ein Texteingabefeld sieht so aus:
<field name="FIELDNAME">text</field>
Das Attribut name
des Felds enthält einen String, der auf eine Texteingabe verweist.
und der innere Text ist der Wert, der auf das Feld angewendet werden soll. Das innere
text -Wert folgt denselben Regeln wie der Konstruktorwert.
Anpassung
Rechtschreibprüfung
Die setSpellcheck kann verwendet werden, um festzulegen, ob für das Feld die Rechtschreibprüfung für den eingegebenen Text durchgeführt wird oder nicht.
Texteingabefelder mit und ohne Rechtschreibprüfung
Die Rechtschreibprüfung ist standardmäßig aktiviert.
Dies gilt für einzelne Felder. Wenn Sie alle Felder ändern möchten, ändern Sie das Feld
Blockly.FieldTextInput.prototype.spellcheck_
-Property.
Texteingabevalidierung erstellen
Der Wert eines Texteingabefelds ist ein String, d. h., alle Validatoren müssen einen String akzeptieren
und einen String, null
oder undefined
zurückgeben.
Hier ist ein Beispiel für eine Validierung, Zeichen aus dem String:
function(newValue) {
return newValue.replace(/a/g, '');
}