Kolom input teks menyimpan string sebagai nilainya dan string sebagai teksnya. Nilainya selalu berupa string yang valid, sedangkan teksnya dapat berupa string apa pun yang dimasukkan ke dalam editornya.
Kolom input teks
Kolom input teks dengan editor terbuka
Kolom input teks pada blok yang diciutkan
Alat
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');
}
};
Konstruktor input teks mengambil nilai opsional dan
validator opsional. Nilai harus dikonversi menjadi string. Jika null
atau undefined
, string kosong akan digunakan.
Definisi JSON juga memungkinkan Anda menyetel opsi spellcheck.
Serialisasi dan XML
JSON
JSON untuk kolom input teks terlihat seperti ini:
{
"fields": {
"FIELDNAME": "text"
}
}
Dengan FIELDNAME
adalah string yang mereferensikan kolom input teks, dan
nilai adalah nilai yang akan diterapkan ke kolom. Nilai
mengikuti aturan yang sama dengan nilai konstruktor.
XML
XML untuk kolom input teks terlihat seperti ini:
<field name="FIELDNAME">text</field>
Jika atribut name
kolom berisi string yang mereferensikan kolom input teks, dan teks dalamnya adalah nilai yang akan diterapkan ke kolom. Nilai teks
dalam mengikuti aturan yang sama dengan nilai konstruktor.
Penyesuaian
Periksa ejaan
Fungsi
setSpellcheck
dapat digunakan untuk menetapkan apakah kolom mengecek ejaan teks inputnya atau tidak.
Kolom input teks dengan dan tanpa pemeriksaan ejaan
Pemeriksaan ejaan diaktifkan secara default.
Hal ini berlaku untuk setiap kolom. Jika Anda ingin mengubah semua kolom, ubah properti
Blockly.FieldTextInput.prototype.spellcheck_
.
Membuat validator input teks
Nilai kolom input teks adalah string, jadi semua validator harus menerima string dan menampilkan string, null
, atau undefined
.
Berikut adalah contoh validator yang menghapus semua karakter a
dari
string:
function(newValue) {
return newValue.replace(/a/g, '');
}