Kolom input teks

Bidang {i>input<i} teks menyimpan {i>string<i} sebagai nilainya dan {i>string<i} sebagai teksnya. Nilainya selalu berupa string yang valid, sedangkan teksnya bisa berupa string apa pun yang dimasukkan ke editornya.

Bidang masukan teks

Kolom input teks dengan editor terbuka

Kolom input teks pada blok yang diciutkan

yang Dipicu oleh Tren

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 menggunakan nilai opsional dan validator opsional. Nilai harus ditransmisikan ke string. Jika berupa null atau undefined, string kosong akan digunakan.

Definisi JSON juga memungkinkan Anda menetapkan opsi spellcheck.

Serialisasi dan XML

JSON

JSON untuk kolom input teks terlihat seperti berikut:

{
  "fields": {
    "FIELDNAME": "text"
  }
}

Dengan FIELDNAME adalah string yang merujuk ke kolom input teks, dan nilainya adalah nilai yang akan diterapkan ke kolom tersebut. Nilai ini mengikuti aturan yang sama dengan nilai konstruktor.

XML

XML untuk kolom input teks terlihat seperti ini:

<field name="FIELDNAME">text</field>

Dengan atribut name kolom berisi string yang merujuk ke kolom input teks, dan teks bagian dalam adalah nilai yang akan diterapkan ke kolom. Nilai teks bagian dalam mengikuti aturan yang sama dengan nilai konstruktor.

Penyesuaian

Periksa ejaan

Fungsi setSpellcheck dapat digunakan untuk menyetel apakah kolom akan memeriksa ejaan teks inputnya atau tidak.

Kolom input teks dengan dan tanpa pemeriksaan ejaan

Pemeriksaan ejaan diaktifkan secara default.

Ini berlaku untuk masing-masing kolom. Jika Anda ingin mengubah semua kolom, ubah properti Blockly.FieldTextInput.prototype.spellcheck_.

Membuat validator input teks

Nilai kolom input teks adalah string, sehingga setiap 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, '');
}