Class SelectionInput

اختيارإدخال

حقل إدخال يسمح بالاختيار من بين مجموعة من الخيارات المحدّدة مسبقًا

تتيح هذه الميزة التحقّق من صحة إرسال النماذج لقوائم SelectionInputType.DROP_DOWN وSelectionInputType.MULTI_SELECT فقط. عند ضبط Action.setAllWidgetsAreRequired(allWidgetsAreRequired) على true أو تحديد هذه الأداة المصغّرة من خلال Action.addRequiredWidget(requiredWidget)، يتم حظر إجراء الإرسال ما لم يتم اختيار قيمة.

تتوفّر هذه الميزة لتطبيقات إضافات Google Workspace وGoogle Chat.

const checkboxGroup =
    CardService.newSelectionInput()
        .setType(CardService.SelectionInputType.CHECK_BOX)
        .setTitle('A group of checkboxes. Multiple selections are allowed.')
        .setFieldName('checkbox_field')
        .addItem('checkbox one title', 'checkbox_one_value', false)
        .addItem('checkbox two title', 'checkbox_two_value', true)
        .addItem('checkbox three title', 'checkbox_three_value', true)
        .setOnChangeAction(
            CardService.newAction().setFunctionName('handleCheckboxChange'),
        );

const radioGroup =
    CardService.newSelectionInput()
        .setType(CardService.SelectionInputType.RADIO_BUTTON)
        .setTitle(
            'A group of radio buttons. Only a single selection is allowed.')
        .setFieldName('checkbox_field')
        .addItem('radio button one title', 'radio_one_value', true)
        .addItem('radio button two title', 'radio_two_value', false)
        .addItem('radio button three title', 'radio_three_value', false);

const multiSelect =
    CardService.newSelectionInput()
        .setType(CardService.SelectionInputType.MULTI_SELECT)
        .setFieldName('multiselect')
        .setTitle('A multi select input example.')
        .addMultiSelectItem(
            'Contact 1',
            'contact-1',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact one description',
            )
        .addMultiSelectItem(
            'Contact 2',
            'contact-2',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact two description',
            )
        .addMultiSelectItem(
            'Contact 3',
            'contact-3',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact three description',
            )
        .addMultiSelectItem(
            'Contact 4',
            'contact-4',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact four description',
            )
        .addMultiSelectItem(
            'Contact 5',
            'contact-5',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact five description',
            )
        .setMultiSelectMaxSelectedItems(3)
        .setMultiSelectMinQueryLength(1);

الطُرق

الطريقةنوع القيمة التي يتم عرضهاوصف قصير
addItem(text, value, selected)SelectionInputتضيف عنصرًا جديدًا يمكن اختياره.
addMultiSelectItem(text, value, selected, startIconUri, bottomText)SelectionInputتُضيف عنصرًا جديدًا يمكن اختياره، وذلك للقوائم التي تتيح الاختيار المتعدّد.
setExternalDataSource(action)SelectionInputتُستخدَم لضبط مصدر بيانات خارجي، مثل قاعدة بيانات علائقية.
setFieldName(fieldName)SelectionInputتُستخدَم لضبط المفتاح الذي يحدِّد مصدر إدخال الاختيار هذا في عنصر الحدث الذي يتم إنشاؤه عند حدوث تفاعل مع واجهة المستخدم.
setMultiSelectMaxSelectedItems(maxSelectedItems)SelectionInputتُستخدَم لضبط الحد الأقصى لعدد العناصر التي يمكن للمستخدم اختيارها.
setMultiSelectMinQueryLength(queryLength)SelectionInputلضبط عدد أحرف النص التي يُدخلها المستخدم قبل أن يطلب التطبيق إكمالها تلقائيًا ويُظهِر العناصر المقترَحة على البطاقة.
setOnChangeAction(action)SelectionInputتُستخدَم لضبط Action ليتم تنفيذه عند تغيير إدخال الاختيار.
setPlatformDataSource(platformDataSource)SelectionInputلضبط مصدر بيانات من Google Workspace
setTitle(title)SelectionInputلضبط العنوان الذي سيتم عرضه قبل حقل الإدخال
setType(type)SelectionInputلضبط نوع هذا الإدخال.

مستندات تفصيلية

addItem(text, value, selected)

تضيف عنصرًا جديدًا يمكن اختياره.

المعلمات

الاسمالنوعالوصف
textObjectالنص الذي سيتم عرضه لهذا العنصر يتم تحويل الوسيطات الأساسية غير السلاسل إلى سلاسل تلقائيًا.
valueObjectقيمة إدخال النموذج التي يتم إرسالها من خلال ردّ الاتصال. يتم تحويل الوسيطات الأساسية غير السلاسل إلى سلاسل تلقائيًا.
selectedBooleanما إذا كان يتم اختيار العنصر تلقائيًا إذا كان الإدخال من النوع "اختيار" يقبل قيمة واحدة فقط (مثل أزرار الاختيار أو القائمة المنسدلة)، اضبط هذا الحقل لعنصر واحد فقط.

الإرجاع

SelectionInput: هذا العنصر، لإنشاء سلسلة.


addMultiSelectItem(text, value, selected, startIconUri, bottomText)

تُضيف عنصرًا جديدًا يمكن اختياره، وذلك للقوائم التي تتيح الاختيار المتعدّد.

const multiSelect =
    CardService.newSelectionInput()
        .setType(CardService.SelectionInputType.MULTI_SELECT)
        .setFieldName('multiselect')
        .setTitle('A multi select input example.')
        .addMultiSelectItem(
            'Contact 1',
            'contact-1',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact one description',
            )
        .addMultiSelectItem(
            'Contact 2',
            'contact-2',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact two description',
            )
        .addMultiSelectItem(
            'Contact 3',
            'contact-3',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact three description',
            )
        .addMultiSelectItem(
            'Contact 4',
            'contact-4',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact four description',
            )
        .addMultiSelectItem(
            'Contact 5',
            'contact-5',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact five description',
        );

المعلمات

الاسمالنوعالوصف
textObjectالنص الذي سيتم عرضه لهذا العنصر يتم تحويل الوسيطات الأساسية غير السلاسل إلى سلاسل تلقائيًا.
valueObjectقيمة إدخال النموذج التي يتم إرسالها من خلال ردّ الاتصال. يتم تحويل الوسيطات الأساسية غير السلاسل إلى سلاسل تلقائيًا.
selectedBooleanما إذا كان يتم اختيار العنصر تلقائيًا إذا كان الإدخال من النوع "اختيار" يقبل قيمة واحدة فقط (مثل أزرار الاختيار أو القائمة المنسدلة)، اضبط هذا الحقل لعنصر واحد فقط.
startIconUriObjectبالنسبة إلى القوائم التي تتيح الاختيار المتعدّد، يجب إدخال عنوان URL للرمز الذي يظهر بجانب حقل نص العنصر. يتيح استخدام ملفات PNG وJPEG.
bottomTextObjectبالنسبة إلى قوائم الاختيار المتعدّد، يشير ذلك إلى وصف نصي أو تصنيف يتم عرضه أسفل حقل النص في العنصر.

الإرجاع

SelectionInput: هذا العنصر، لإنشاء سلسلة.


setExternalDataSource(action)

تُستخدَم لضبط مصدر بيانات خارجي، مثل قاعدة بيانات علائقية.

const multiSelect =
    CardService.newSelectionInput()
        .setType(CardService.SelectionInputType.MULTI_SELECT)
        .setFieldName('contacts')
        .setTitle('Selected contacts')
        .addMultiSelectItem(
            'Contact 3',
            'contact-3',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact three description',
            )
        .setMultiSelectMaxSelectedItems(5)
        .setMultiSelectMinQueryLength(2)
        .setExternalDataSource(
            CardService.newAction().setFunctionName('getContacts'),
        );

المعلمات

الاسمالنوعالوصف
actionActionمصدر البيانات الخارجي

الإرجاع

SelectionInput: هذا العنصر، لإنشاء سلسلة.


setFieldName(fieldName)

تُستخدَم لضبط المفتاح الذي يحدِّد مصدر إدخال الاختيار هذا في عنصر الحدث الذي يتم إنشاؤه عند حدوث تفاعل مع واجهة المستخدم. لا تظهر هذه البيانات للمستخدم. مطلوب، ويجب أن يكون فريدًا.

المعلمات

الاسمالنوعالوصف
fieldNameStringالاسم الذي سيتمّ تعيينه لمصدر الإدخال هذا.

الإرجاع

SelectionInput: هذا العنصر، لإنشاء سلسلة.


setMultiSelectMaxSelectedItems(maxSelectedItems)

تُستخدَم لضبط الحد الأقصى لعدد العناصر التي يمكن للمستخدم اختيارها.

const multiSelect =
    CardService.newSelectionInput()
        .setType(CardService.SelectionInputType.MULTI_SELECT)
        .setFieldName('multiselect')
        .setTitle('A multi select input example.')
        .setMultiSelectMaxSelectedItems(3)
        .addMultiSelectItem(
            'Contact 1',
            'contact-1',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact one description',
            )
        .addMultiSelectItem(
            'Contact 2',
            'contact-2',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact two description',
            )
        .addMultiSelectItem(
            'Contact 3',
            'contact-3',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact three description',
            )
        .addMultiSelectItem(
            'Contact 4',
            'contact-4',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact four description',
            )
        .addMultiSelectItem(
            'Contact 5',
            'contact-5',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact five description',
        );

المعلمات

الاسمالنوعالوصف
maxSelectedItemsIntegerالحد الأقصى لعدد العناصر

الإرجاع

SelectionInput: هذا العنصر، لإنشاء سلسلة.


setMultiSelectMinQueryLength(queryLength)

لضبط عدد أحرف النص التي يُدخلها المستخدم قبل أن يطلب التطبيق إكمالها تلقائيًا ويُظهِر العناصر المقترَحة على البطاقة.

const multiSelect =
    CardService.newSelectionInput()
        .setType(CardService.SelectionInputType.MULTI_SELECT)
        .setFieldName('multiselect')
        .setTitle('A multi select input example.')
        .setMultiSelectMinQueryLength(1)
        .addMultiSelectItem(
            'Contact 1',
            'contact-1',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact one description',
            )
        .addMultiSelectItem(
            'Contact 2',
            'contact-2',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact two description',
            )
        .addMultiSelectItem(
            'Contact 3',
            'contact-3',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact three description',
            )
        .addMultiSelectItem(
            'Contact 4',
            'contact-4',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact four description',
            )
        .addMultiSelectItem(
            'Contact 5',
            'contact-5',
            false,
            'https://www.gstatic.com/images/branding/product/2x/contacts_48dp.png',
            'Contact five description',
        );

المعلمات

الاسمالنوعالوصف
queryLengthIntegerعدد أحرف النص

الإرجاع

SelectionInput: هذا العنصر، لإنشاء سلسلة.


setOnChangeAction(action)

تُستخدَم لضبط Action ليتم تنفيذه عند تغيير إدخال الاختيار.

المعلمات

الاسمالنوعالوصف
actionActionالإجراء الذي يجب اتّخاذه

الإرجاع

SelectionInput: هذا العنصر، لإنشاء سلسلة.


setPlatformDataSource(platformDataSource)

لضبط مصدر بيانات من Google Workspace تُستخدَم لتعبئة العناصر في قائمة اختيار متعدّد.

const multiSelect =
    CardService.newSelectionInput()
        .setType(CardService.SelectionInputType.MULTI_SELECT)
        .setFieldName('contacts')
        .setTitle('Selected contacts')
        .setPlatformDataSource(
            CardService.newPlatformDataSource().setCommonDataSource(
                CardService.CommonDataSource.USER,
                ),
        );
لا تتوفّر هذه الميزة إلا لتطبيقات Google Chat. لا تتوفّر هذه الميزة لإضافات Google Workspace.

المعلمات

الاسمالنوعالوصف
platformDataSourcePlatformDataSourceمصدر البيانات

الإرجاع

SelectionInput: هذا العنصر، لإنشاء سلسلة.


setTitle(title)

لضبط العنوان الذي سيتم عرضه قبل حقل الإدخال

المعلمات

الاسمالنوعالوصف
titleStringعنوان حقل الإدخال

الإرجاع

SelectionInput: هذا العنصر، لإنشاء سلسلة.


setType(type)

لضبط نوع هذا الإدخال. القيمة التلقائية هي CHECKBOX.

المعلمات

الاسمالنوعالوصف
typeSelectionInputTypeنوع الاختيار.

الإرجاع

SelectionInput: هذا العنصر، لإنشاء سلسلة.