Class TextInput
Sử dụng bộ sưu tập để sắp xếp ngăn nắp các trang
Lưu và phân loại nội dung dựa trên lựa chọn ưu tiên của bạn.
TextInput (Nhập văn bản)
Một tiện ích trường nhập chấp nhận phương thức nhập văn bản.
Hỗ trợ xác thực việc gửi biểu mẫu. Khi Action.setAllWidgetsAreRequired(allWidgetsAreRequired)
được đặt thành true
hoặc tiện ích này được chỉ định thông qua Action.addRequiredWidget(requiredWidget)
, thao tác gửi sẽ bị chặn trừ phi bạn nhập một giá trị.
Có sẵn cho các tiện ích bổ sung của Google Workspace và ứng dụng Google Chat.
const textInput = CardService.newTextInput()
.setFieldName('text_input_form_input_key')
.setTitle('Text input title')
.setHint('Text input hint');
Tài liệu chi tiết
setFieldName(fieldName)
Đặt khoá xác định phương thức nhập văn bản này trong đối tượng sự kiện được tạo khi có tương tác với giao diện người dùng. Người dùng không nhìn thấy. Bắt buộc, phải là duy nhất.
Thông số
Tên | Loại | Mô tả |
fieldName | String | Khoá dùng để xác định dữ liệu đầu vào này. |
Cầu thủ trả bóng
TextInput
– Đối tượng này, để tạo chuỗi.
setHint(hint)
Đặt gợi ý cho hoạt động nhập văn bản. Dùng để cung cấp cho người dùng thêm hướng dẫn về nội dung cần nhập. Ví dụ: gợi ý có thể mô tả định dạng ("xxx-xxx-xxxx") cho trường số điện thoại.
Thông số
Tên | Loại | Mô tả |
hint | String | Gợi ý văn bản sẽ hiển thị bên dưới trường nhập. Văn bản này luôn hiển thị. |
Cầu thủ trả bóng
TextInput
– Đối tượng này, để tạo chuỗi.
setMultiline(multiline)
Đặt xem văn bản nhập vào hiển thị trên một dòng hay nhiều dòng.
Thông số
Tên | Loại | Mô tả |
multiline | Boolean | Chế độ cài đặt nhiều dòng. |
Cầu thủ trả bóng
TextInput
– Đối tượng này, để tạo chuỗi.
setOnChangeAction(action)
Đặt một hành động sẽ được thực hiện bất cứ khi nào dữ liệu nhập văn bản thay đổi.
Thông số
Tên | Loại | Mô tả |
action | Action | Hành động cần thực hiện. |
Cầu thủ trả bóng
TextInput
– Đối tượng này, để tạo chuỗi.
setSuggestions(suggestions)
Đặt nội dung đề xuất tự động hoàn thành trong trường văn bản.
Thông số
Tên | Loại | Mô tả |
suggestions | Suggestions | Tập hợp các đề xuất để sử dụng. |
Cầu thủ trả bóng
TextInput
– Đối tượng này, để tạo chuỗi.
setSuggestionsAction(suggestionsAction)
Đặt thao tác gọi lại để tìm nạp nội dung đề xuất dựa trên dữ liệu đầu vào của người dùng để tự động hoàn thành. Tham số Action
phải chỉ định một hàm callback trả về đối tượng SuggestionsResponse
.
const action = CardService.newAction()
.setFunctionName('suggestionCallback')
.setParameters({numSuggestions: 3});
CardService.newTextInput()
.setFieldName('option-field')
.setTitle('Option Selected')
.setSuggestionsAction(action);
// ...
function suggestionCallback(e) {
const suggestions = CardService.newSuggestions();
const numSuggestions = Number.parseInt(e.parameter.numSuggestions);
for (let i = 1; i <= numSuggestions; i++) {
suggestions.addSuggestion(`Suggestion ${i}`);
}
return CardService.newSuggestionsResponseBuilder()
.setSuggestions(suggestions)
.build();
}
Thông số
Tên | Loại | Mô tả |
suggestionsAction | Action | Thao tác tìm nạp nội dung đề xuất cho dữ liệu đầu vào này. |
Cầu thủ trả bóng
TextInput
– Đối tượng này, để tạo chuỗi.
setTitle(title)
Đặt tiêu đề sẽ hiển thị phía trên trường nhập. Bắt buộc.
Thông số
Tên | Loại | Mô tả |
title | String | Nhãn văn bản cho dữ liệu đầu vào này. |
Cầu thủ trả bóng
TextInput
– Đối tượng này, để tạo chuỗi.
setValidation(validation)
Đặt quy tắc xác thực cho tiện ích này.
const validation = CardService.newValidation().setCharacterLimit('10').setType(
CardService.InputType.TEXT);
const input = CardService.newTextInput()
.setFieldName('text_name_xxx1')
.setTitle('Max 10 characters')
.setValidation(validation);
Thông số
Cầu thủ trả bóng
TextInput
– Đối tượng này, để tạo chuỗi.
setValue(value)
Đặt giá trị được điền sẵn trong trường nhập.
Thông số
Tên | Loại | Mô tả |
value | String | Giá trị mặc định được đặt trong dữ liệu đầu vào. Giá trị này luôn được biểu thị dưới dạng chuỗi trong tham số lệnh gọi lại của biểu mẫu. |
Cầu thủ trả bóng
TextInput
– Đối tượng này, để tạo chuỗi.
Trừ phi có lưu ý khác, nội dung của trang này được cấp phép theo Giấy phép ghi nhận tác giả 4.0 của Creative Commons và các mẫu mã lập trình được cấp phép theo Giấy phép Apache 2.0. Để biết thông tin chi tiết, vui lòng tham khảo Chính sách trang web của Google Developers. Java là nhãn hiệu đã đăng ký của Oracle và/hoặc các đơn vị liên kết với Oracle.
Cập nhật lần gần đây nhất: 2025-07-26 UTC.
[null,null,["Cập nhật lần gần đây nhất: 2025-07-26 UTC."],[[["\u003cp\u003eTextInput is a UI element that allows users to input text within Google Workspace Add-ons and Google Chat apps.\u003c/p\u003e\n"],["\u003cp\u003eIt offers various customization options, including setting titles, hints, pre-filled values, and handling multi-line input.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers can set actions triggered by text input changes or employ auto-completion with suggestions.\u003c/p\u003e\n"],["\u003cp\u003e\u003ccode\u003esetFieldName\u003c/code\u003e is a required method used to identify the TextInput element in event objects for data retrieval.\u003c/p\u003e\n"],["\u003cp\u003eEach customization method for the TextInput object returns the object itself, enabling method chaining for streamlined configuration.\u003c/p\u003e\n"]]],["The `TextInput` widget allows text input and supports form validation, blocking submission if required fields are empty. Key actions include setting a unique field name (`setFieldName`), providing user hints (`setHint`), enabling multiline input (`setMultiline`), and defining actions on text change (`setOnChangeAction`). Autocompletion is supported via suggestions (`setSuggestions`) or a callback to fetch them (`setSuggestionsAction`). You can set a title (`setTitle`), validation rules (`setValidation`), and pre-fill values (`setValue`).\n"],null,["# Class TextInput\n\nTextInput\n\nA input field widget that accepts text input.\n\nSupports form submission validation. When [Action.setAllWidgetsAreRequired(allWidgetsAreRequired)](/apps-script/reference/card-service/action#setAllWidgetsAreRequired(Boolean)) is set to\n`true` or this widget is specified through [Action.addRequiredWidget(requiredWidget)](/apps-script/reference/card-service/action#addRequiredWidget(String)), the submission\naction is blocked unless a value is entered.\n\nAvailable for Google Workspace add-ons and Google Chat apps.\n\n```javascript\nconst textInput = CardService.newTextInput()\n .setFieldName('text_input_form_input_key')\n .setTitle('Text input title')\n .setHint('Text input hint');\n``` \n\n### Methods\n\n| Method | Return type | Brief description |\n|--------------------------------------------------------------------------|----------------|--------------------------------------------------------------------------------------------------------------------|\n| [setFieldName(fieldName)](#setFieldName(String)) | [TextInput](#) | Sets the key that identifies this text input in the event object that is generated when there is a UI interaction. |\n| [setHint(hint)](#setHint(String)) | [TextInput](#) | Sets a hint for the text input. |\n| [setMultiline(multiline)](#setMultiline(Boolean)) | [TextInput](#) | Sets whether the input text shows on one line or multiple lines. |\n| [setOnChangeAction(action)](#setOnChangeAction(Action)) | [TextInput](#) | Sets an action to be performed whenever the text input changes. |\n| [setSuggestions(suggestions)](#setSuggestions(Suggestions)) | [TextInput](#) | Sets the suggestions for autocompletion in the text field. |\n| [setSuggestionsAction(suggestionsAction)](#setSuggestionsAction(Action)) | [TextInput](#) | Sets the callback action to fetch suggestions based on user input for autocompletion. |\n| [setTitle(title)](#setTitle(String)) | [TextInput](#) | Sets the title to be shown above the input field. |\n| [setValidation(validation)](#setValidation(Validation)) | [TextInput](#) | Sets the validation rule for this widget. |\n| [setValue(value)](#setValue(String)) | [TextInput](#) | Sets the pre-filled value to be set in the input field. |\n\nDetailed documentation\n----------------------\n\n### `set``Field``Name(fieldName)`\n\nSets the key that identifies this text input in the event object that is generated when there\nis a UI interaction. Not visible to the user. Required, must be unique.\n\n#### Parameters\n\n| Name | Type | Description |\n|---------------|----------|----------------------------------------------|\n| `field``Name` | `String` | The key that is used to identify this input. |\n\n#### Return\n\n\n[TextInput](#) --- This object, for chaining.\n\n*** ** * ** ***\n\n### `set``Hint(hint)`\n\nSets a hint for the text input. Used to give the user extra guidance on what to input. For\nexample, a hint could describe formatting (\"xxx-xxx-xxxx\") for a phone number field.\n\n#### Parameters\n\n| Name | Type | Description |\n|--------|----------|------------------------------------------------------------------------------|\n| `hint` | `String` | The text hint to display below the input field. This text is always visible. |\n\n#### Return\n\n\n[TextInput](#) --- This object, for chaining.\n\n*** ** * ** ***\n\n### `set``Multiline(multiline)`\n\nSets whether the input text shows on one line or multiple lines.\n\n#### Parameters\n\n| Name | Type | Description |\n|-------------|-----------|------------------------|\n| `multiline` | `Boolean` | The multiline setting. |\n\n#### Return\n\n\n[TextInput](#) --- This object, for chaining.\n\n*** ** * ** ***\n\n### `set``On``Change``Action(action)`\n\nSets an action to be performed whenever the text input changes.\n\n#### Parameters\n\n| Name | Type | Description |\n|----------|------------------------------------------------------|---------------------|\n| `action` | [Action](/apps-script/reference/card-service/action) | The action to take. |\n\n#### Return\n\n\n[TextInput](#) --- This object, for chaining.\n\n*** ** * ** ***\n\n### `set``Suggestions(suggestions)`\n\nSets the suggestions for autocompletion in the text field.\n\n#### Parameters\n\n| Name | Type | Description |\n|---------------|----------------------------------------------------------------|---------------------------------------|\n| `suggestions` | [Suggestions](/apps-script/reference/card-service/suggestions) | The collection of suggestions to use. |\n\n#### Return\n\n\n[TextInput](#) --- This object, for chaining.\n\n*** ** * ** ***\n\n### `set``Suggestions``Action(suggestionsAction)`\n\nSets the callback action to fetch suggestions based on user input for autocompletion. The\n[Action](/apps-script/reference/card-service/action) parameter must specify a callback function that returns a [SuggestionsResponse](/apps-script/reference/card-service/suggestions-response) object.\n\n```javascript\nconst action = CardService.newAction()\n .setFunctionName('suggestionCallback')\n .setParameters({numSuggestions: 3});\n\nCardService.newTextInput()\n .setFieldName('option-field')\n .setTitle('Option Selected')\n .setSuggestionsAction(action);\n\n// ...\n\nfunction suggestionCallback(e) {\n const suggestions = CardService.newSuggestions();\n const numSuggestions = Number.parseInt(e.parameter.numSuggestions);\n for (let i = 1; i \u003c= numSuggestions; i++) {\n suggestions.addSuggestion(`Suggestion ${i}`);\n }\n return CardService.newSuggestionsResponseBuilder()\n .setSuggestions(suggestions)\n .build();\n}\n```\n\n#### Parameters\n\n| Name | Type | Description |\n|-----------------------|------------------------------------------------------|-----------------------------------------------------|\n| `suggestions``Action` | [Action](/apps-script/reference/card-service/action) | The action that fetches suggestions for this input. |\n\n#### Return\n\n\n[TextInput](#) --- This object, for chaining.\n\n*** ** * ** ***\n\n### `set``Title(title)`\n\nSets the title to be shown above the input field. Required.\n\n#### Parameters\n\n| Name | Type | Description |\n|---------|----------|--------------------------------|\n| `title` | `String` | The text label for this input. |\n\n#### Return\n\n\n[TextInput](#) --- This object, for chaining.\n\n*** ** * ** ***\n\n### `set``Validation(validation)`\n\nSets the validation rule for this widget.\n\n```javascript\nconst validation = CardService.newValidation().setCharacterLimit('10').setType(\n CardService.InputType.TEXT);\n\nconst input = CardService.newTextInput()\n .setFieldName('text_name_xxx1')\n .setTitle('Max 10 characters')\n .setValidation(validation);\n```\n\n#### Parameters\n\n| Name | Type | Description |\n|--------------|--------------------------------------------------------------|-----------------------------------------------------|\n| `validation` | [Validation](/apps-script/reference/card-service/validation) | The validation rule for this [TextInput](#) widget. |\n\n#### Return\n\n\n[TextInput](#) --- This object, for chaining.\n\n*** ** * ** ***\n\n### `set``Value(value)`\n\nSets the pre-filled value to be set in the input field.\n\n#### Parameters\n\n| Name | Type | Description |\n|---------|----------|--------------------------------------------------------------------------------------------------------------|\n| `value` | `String` | The default value placed in the input. It is always represented as a string in the form callback parameters. |\n\n#### Return\n\n\n[TextInput](#) --- This object, for chaining."]]