Elemen UI Microsoft.Common.TextBox
Elemen antarmuka pengguna (UI) TextBox
dapat digunakan untuk menambahkan teks yang tidak diformat. Elemen adalah bidang input baris tunggal, tetapi mendukung input multibaris dengan properti multiLine
.
Sampel UI
Elemen TextBox
menggunakan kotak teks baris tunggal atau multibaris.
Contoh kotak teks baris tunggal.
Contoh kotak teks multibaris.
Skema
{
"name": "nameInstance",
"type": "Microsoft.Common.TextBox",
"label": "Name",
"defaultValue": "contoso123",
"toolTip": "Use only allowed characters",
"placeholder": "",
"multiLine": false,
"constraints": {
"required": true,
"validations": [
{
"regex": "^[a-z0-9A-Z]{1,30}$",
"message": "Only alphanumeric characters are allowed, and the value must be 1-30 characters long."
},
{
"isValid": "[startsWith(steps('resourceConfig').nameInstance, 'contoso')]",
"message": "Must start with 'contoso'."
}
]
},
"visible": true
}
Sampel output
"contoso123"
Keterangan
- Gunakan properti
toolTip
untuk menampilkan teks tentang elemen saat kursor mouse mengarah ke simbol informasi. - Properti
placeholder
adalah teks bantuan yang menghilang saat pengguna mulai mengedit. Jikaplaceholder
dandefaultValue
sudah didefinisikan, yangdefaultValue
akan diutamakan dan ditampilkan. - Properti
multiLine
ini adalah boolean,true
ataufalse
. Untuk menggunakan kotak teks multibaris, atur properti ketrue
. Jika kotak teks multi-baris tidak diperlukan, atur properti kefalse
atau kecualikan properti. Untuk baris baru, output JSON menunjukkan\n
untuk umpan baris. Kotak teks multibaris menerima\r
untuk pengembalian pengangkutan (CR) dan\n
untuk umpan baris (LF). Misalnya, nilai default dapat mencakup\r\n
untuk menentukan CRLF. - Jika
constraints.required
diatur ketrue
, maka kotak teks harus memiliki nilai agar berhasil divalidasi. Nilai defaultnya adalahfalse
. - Properti
validations
adalah larik tempat Anda menambahkan kondisi untuk memeriksa nilai yang disediakan dalam kotak teks. - Properti
regex
adalah pola ekspresi reguler JavaScript. Jika ditentukan, maka nilai kotak teks harus cocok dengan pola agar berhasil divalidasi. Nilai defaultnya adalahnull
. Untuk informasi selengkapnya tentang sintaks regex, lihat Referensi cepat ekspresi reguler. - Properti
isValid
berisi ekspresi yang mengevaluasi ketrue
ataufalse
. Dalam ekspresi, Anda menentukan kondisi yang menentukan apakah kotak teks valid. - Properti
message
adalah string untuk ditampilkan saat nilai kotak teks gagal divalidasi. - Menentukan nilai
regex
saatrequired
diatur kefalse
itu mungkin. Dalam skenario ini, nilai tidak diperlukan agar kotak teks berhasil divalidasi. Jika suatu nilai ditentukan,nilai itu harus cocok dengan pola ekspresi reguler.
Contoh
Contoh menunjukkan cara menggunakan kotak teks baris tunggal dan kotak teks multibaris.
Baris tunggal
Contoh berikut menggunakan kotak teks dengan kontrol Microsoft.Solutions.ArmApiControl untuk memeriksa ketersediaan nama sumber daya.
Dalam contoh ini, saat Anda memasukkan nama akun penyimpanan dan keluar dari kotak teks, kontrol akan memeriksa apakah nama tersebut valid dan tersedia. Jika nama tidak valid atau sudah ada, pesan kesalahan akan ditampilkan. Nama akun penyimpanan yang valid dan tersedia ditampilkan dalam output.
{
"$schema": "https://schema.management.azure.com/schemas/0.1.2-preview/CreateUIDefinition.MultiVm.json#",
"handler": "Microsoft.Azure.CreateUIDef",
"version": "0.1.2-preview",
"parameters": {
"basics": [
{
"name": "nameApi",
"type": "Microsoft.Solutions.ArmApiControl",
"request": {
"method": "POST",
"path": "[concat(subscription().id, '/providers/Microsoft.Storage/checkNameAvailability?api-version=2021-09-01')]",
"body": {
"name": "[basics('txtStorageName')]",
"type": "Microsoft.Storage/storageAccounts"
}
}
},
{
"name": "txtStorageName",
"type": "Microsoft.Common.TextBox",
"label": "Storage account name",
"constraints": {
"validations": [
{
"isValid": "[basics('nameApi').nameAvailable]",
"message": "[basics('nameApi').message]"
}
]
}
}
],
"steps": [],
"outputs": {
"textBox": "[basics('txtStorageName')]"
}
}
}
Multibaris
Contoh ini menggunakan properti multiLine
untuk membuat kotak teks multibaris dengan teks tempat penampung.
{
"$schema": "https://schema.management.azure.com/schemas/0.1.2-preview/CreateUIDefinition.MultiVm.json#",
"handler": "Microsoft.Azure.CreateUIDef",
"version": "0.1.2-preview",
"parameters": {
"basics": [
{
"name": "demoTextBox",
"type": "Microsoft.Common.TextBox",
"label": "Multi-line text box",
"defaultValue": "",
"toolTip": "Use 1-60 alphanumeric characters, hyphens, spaces, periods, and colons.",
"placeholder": "This is a multi-line text box:\nLine 1.\nLine 2.\nLine 3.",
"multiLine": true,
"constraints": {
"required": true,
"validations": [
{
"regex": "^[a-z0-9A-Z -.:\n]{1,60}$",
"message": "Only 1-60 alphanumeric characters, hyphens, spaces, periods, and colons are allowed."
}
]
},
"visible": true
}
],
"steps": [],
"outputs": {
"textBox": "[basics('demoTextBox')]"
}
}
}
Langkah berikutnya
- Untuk pengenalan cara membuat definisi UI, lihat CreateUiDefinition.json untuk pengalaman pembuatan aplikasi terkelola Azure.
- Untuk deskripsi properti umum dalam elemen antarmuka pengguna, lihat elemen CreateUiDefinition.
- Untuk mempelajari selengkapnya tentang fungsi, lihat fungsi CreateUiDefinition.