Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Za TextBox pomocą elementu interfejsu użytkownika można dodać niesformatowany tekst. Element jest jednowierszowym polem wejściowym, ale obsługuje wprowadzanie wielowierszowe z właściwością multiLine .
Przykład interfejsu użytkownika
Element TextBox używa jednowierszowego lub wielowierszowego pola tekstowego.
Przykład jednowierszowego pola tekstowego.
Przykład pola tekstowego z wieloma wierszami.
Schemat
{
"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
}
Przykładowe dane wyjściowe
"contoso123"
Uwagi
toolTipUżyj właściwości , aby wyświetlić tekst dotyczący elementu, gdy kursor myszy zostanie zatrzymany na symbolu informacji.- Właściwość
placeholderjest tekstem pomocy, który zniknie po rozpoczęciu edycji przez użytkownika.placeholderJeśli wartości idefaultValuesą zdefiniowane, pierwszeństwodefaultValuema wartość i jest wyświetlana. - Właściwość
multiLinejest wartością logicznątruelubfalse. Aby użyć wielowierszowego pola tekstowego, ustaw właściwość natruewartość . Jeśli nie jest potrzebne wielowierszowe pole tekstowe, ustaw właściwość nafalselub wyklucz właściwość . W przypadku nowych wierszy dane wyjściowe JSON są wyświetlane\ndla kanału informacyjnego wiersza. Wielowierszowe pole tekstowe akceptuje\rzwrot karetki (CR) i\nźródło danych liniowych (LF). Na przykład wartość domyślna może obejmować\r\nokreślenie powrotu karetki i zestawienia wiersza (CRLF). - Jeśli
constraints.requiredjest ustawiona wartośćtrue, pole tekstowe musi mieć wartość do pomyślnego zweryfikowania. Domyślna wartość tofalse. - Właściwość to tablica
validations, w której dodawane są warunki sprawdzania wartości podanej w polu tekstowym. - Właściwość
regexjest wzorcem wyrażenia regularnego języka JavaScript. Jeśli zostanie określona, wartość pola tekstowego musi być zgodna ze wzorcem w celu pomyślnego zweryfikowania. Domyślna wartość tonull. Aby uzyskać więcej informacji na temat składni wyrażeń regularnych, zobacz Skrócona dokumentacja wyrażeń regularnych. - Właściwość
isValidzawiera wyrażenie, które daje wartość lubtruefalse. W wyrażeniu zdefiniujesz warunek określający, czy pole tekstowe jest prawidłowe. - Właściwość
messagejest ciągiem, który ma być wyświetlany, gdy sprawdzanie poprawności wartości pola tekstowego zakończy się niepowodzeniem. - Istnieje możliwość określenia wartości dla
regexparametru , gdyrequiredjest ustawiona wartośćfalse. W tym scenariuszu wartość nie jest wymagana, aby pole tekstowe zostało pomyślnie zweryfikowane. Jeśli został określony, musi być zgodny ze wzorcem wyrażenia regularnego.
Przykłady
W przykładach pokazano, jak używać jednowierszowego pola tekstowego i pola tekstowego z wieloma wierszami.
Jednowierszowe
W poniższym przykładzie użyto pola tekstowego z kontrolką Microsoft.Solutions.ArmApiControl , aby sprawdzić dostępność nazwy zasobu.
W tym przykładzie po wprowadzeniu nazwy konta magazynu i wyjściu z pola tekstowego kontrolka sprawdza, czy nazwa jest prawidłowa i czy jest dostępna. Jeśli nazwa jest nieprawidłowa lub już istnieje, zostanie wyświetlony komunikat o błędzie. Nazwa konta magazynu, która jest prawidłowa i dostępna, jest wyświetlana w danych wyjściowych.
{
"$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')]"
}
}
}
Wiele linii
W tym przykładzie użyto multiLine właściwości do utworzenia wielowierszowego pola tekstowego z tekstem zastępczym.
{
"$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')]"
}
}
}
Następne kroki
- Aby zapoznać się z wprowadzeniem do tworzenia definicji interfejsu użytkownika, zobacz CreateUiDefinition.json dla środowiska tworzenia aplikacji zarządzanej platformy Azure.
- Opis typowych właściwości w elementach interfejsu użytkownika można znaleźć w temacie CreateUiDefinition elements (Tworzenie elementów interfejsu użytkownika).
- Aby dowiedzieć się więcej na temat funkcji, zobacz CreateUiDefinition functions (Funkcje CreateUiDefinition).