ช่องป้อนข้อความหลายบรรทัดจะเก็บสตริงเป็นค่า และสตริงเป็นข้อความ ค่าจะเป็นสตริงที่ถูกต้องเสมอ ในขณะที่ข้อความของสตริงจะเป็นสตริงใดๆ ที่ป้อนลงในเครื่องมือแก้ไข ช่องนี้ยังรองรับอักขระสำหรับขึ้นบรรทัดใหม่ที่ป้อนในตัวแก้ไข ซึ่งต่างจากช่องป้อนข้อความ
ช่องป้อนข้อความหลายบรรทัด
ช่องป้อนข้อความหลายบรรทัดที่เปิดเครื่องมือแก้ไข
ช่องป้อนข้อความหลายบรรทัดบนบล็อกที่ยุบอยู่
การสร้างวิดีโอ
JSON
{
"type": "example_multilinetextinput",
"message0": "multiline text input: %1",
"args0": [
{
"type": "field_multilinetext",
"name": "FIELDNAME",
"text": "default text\n with newline character",
"spellcheck": false
}
]
}
JavaScript
Blockly.Blocks['example_multilinetextinput'] = {
init: function() {
this.appendDummyInput()
.appendField("multiline text input:")
.appendField(new Blockly.FieldMultilineInput('default text\n with newline character'),
'FIELDNAME');
}
};
ตัวสร้างการป้อนข้อความหลายบรรทัดจะใช้ค่าที่ไม่บังคับและvalidatorซึ่งไม่บังคับ ค่าควรส่งไปยัง
สตริง หากเป็น null
หรือ undefined
ระบบจะใช้สตริงที่ว่างเปล่า
นอกจากนี้ คำจำกัดความของ JSON ยังให้คุณตั้งค่าตัวเลือกตรวจตัวสะกดได้ด้วย
การทำให้เป็นอนุกรม
JSON
JSON สำหรับช่องป้อนข้อความหลายบรรทัดจะมีลักษณะดังนี้
{
"fields": {
"FIELDNAME": "line1\nline2"
}
}
โดย FIELDNAME
เป็นสตริงที่อ้างอิงช่องป้อนข้อความหลายบรรทัด และค่าคือค่าที่จะนำไปใช้กับช่องนี้ ค่าดังกล่าวเป็นไปตามกฎเดียวกันกับค่าตัวสร้าง
XML
XML สำหรับฟิลด์ป้อนข้อความหลายบรรทัดจะมีลักษณะดังนี้
<field name="FIELDNAME">line1&#10;line2</field>
ที่แอตทริบิวต์ name
ของช่องมีสตริงที่อ้างอิงช่องป้อนข้อความหลายบรรทัด และข้อความภายในคือค่าที่จะนำไปใช้กับช่องนี้ ค่าข้อความภายในเป็นไปตามกฎเดียวกันกับค่าของตัวสร้าง
การปรับแต่งช่อง
ตรวจการสะกด
ใช้ฟังก์ชัน setSpellcheck เพื่อกำหนดว่าจะให้ช่องตรวจการสะกดข้อความที่ป้อนหรือไม่
ช่องป้อนข้อความที่มีและไม่มีการตรวจการสะกด
การตรวจตัวสะกดจะเปิดไว้โดยค่าเริ่มต้น
ซึ่งจะมีผลกับแต่ละช่อง หากต้องการแก้ไขทุกช่อง ให้เปลี่ยนพร็อพเพอร์ตี้ Blockly.FieldMultilineInput.prototype.spellcheck_
การสร้างโปรแกรมตรวจสอบการป้อนข้อความ
ค่าของช่องป้อนข้อความหลายบรรทัดเป็นสตริง ดังนั้นโปรแกรมตรวจสอบจะต้องยอมรับสตริงและแสดงผลสตริง null
หรือ undefined
ต่อไปนี้คือตัวอย่างของโปรแกรมตรวจสอบที่นำอักขระ "a" ออกจากสตริง
function(newValue) {
return newValue.replace(/a/gm, '');
}