文本输入字段将字符串存储为其值,将字符串存储为其文本。其 值始终是有效的字符串,而其文本可以是输入的任何字符串 其编辑器。
文本输入字段
打开了编辑器的文本输入字段
收起的文本块上的文本输入字段
恣意创作
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');
}
};
文本输入构造函数接受一个可选值和一个可选
验证器。该值应转换为
字符串。如果为 null
或 undefined
,将使用空字符串。
根据 JSON 定义,您还可以设置 spellcheck 选项。
序列化和 XML
JSON
文本输入字段的 JSON 如下所示:
{
"fields": {
"FIELDNAME": "text"
}
}
其中 FIELDNAME
是引用文本输入字段的字符串,以及
值是应用于该字段的值。值
遵循与构造函数值相同的规则。
XML
文本输入字段的 XML 如下所示:
<field name="FIELDNAME">text</field>
其中字段的 name
属性包含引用文本输入的字符串
字段,而内部文本是要应用于该字段的值。内部
text 值遵循与构造函数值相同的规则。
自定义
拼写检查
通过 setSpellcheck 函数可以设置该字段是否对其输入文本进行拼写检查。
带有拼写检查和不带拼写检查的文本输入字段
拼写检查默认处于开启状态。
这适用于单个字段。如果您要修改所有字段,请将
Blockly.FieldTextInput.prototype.spellcheck_
属性。
创建文本输入验证器
文本输入字段的值是一个字符串,因此任何验证器都必须接受字符串
并返回一个字符串、null
或 undefined
。
以下示例是一个验证器示例,该验证器移除所有“a”字符的 字符串:
function(newValue) {
return newValue.replace(/a/g, '');
}