在自适应卡中一次性使用后如何禁用按钮 [英] How to disable button after single use in a Adaptive Cards

查看:57
本文介绍了在自适应卡中一次性使用后如何禁用按钮的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在我的LUIS代理中使用自适应卡.用户填写完所有详细信息并提交卡后,应禁用提交按钮,以防止重复使用该按钮.

I am using Adaptive Cards in my LUIS agent. Once a user has filled in all the details and submits the card the submit button should get disabled to prevent duplicate usage of the button.

我们还想知道在单击按钮时显示嵌套的自适应卡时如何隐藏按钮.

We also would like to know how to hide a button when displaying a nested Adaptive Card on a button click.

我尝试使用用户输入的值来验证卡,但我正在为此寻求更好和最佳的解决方案

I tried validating the card using the input values made by the user but i am looking for a better and optimal solution for this

P.s正在使用bot框架v4 API

P.s working on bot framework v4 API

推荐答案

在网络聊天中,可以在Azure机器人的传入活动"事件中处理隐藏/禁用提交按钮.您可以从自适应卡的JSON文件中获取"your_submit_button_id".

In webchat, hiding/disabling submit button can be handled in "Incoming Activity" event of Azure bot. You can get 'your_submit_button_id' from JSON file of adaptive card.

const store = window.WebChat.createStore(
    {},
    function (_ref) {
        const dispatch = _ref.dispatch;
        return function (next) {
            return function (action) {
                if (action.type === 'DIRECT_LINE/CONNECT_FULFILLED') {
                    dispatch({
                        type: 'WEB_CHAT/SEND_EVENT',
                        payload: {
                            name: 'webchat/join',
                            value: { language: window.navigator.language }
                        }
                    });
                }
if (action.type === 'DIRECT_LINE/INCOMING_ACTIVITY') {
        const event = new Event('webchatincomingactivity');

        event.data = action.payload.activity;
/* hiding/disabling button code starts here */
    if(event.data.value!=undefined && event.data.value.id=='your_submit_button_id')
    {
     var btnArr=document.getElementsByClassName("ac-pushButton");
     btnArr[btnArr.length-1].style.display='none';

             //btnArr[btnArr.length-1].disabled = true;
    }
        window.dispatchEvent(event);
    }
                return next(action);
            };
        };
    });

这篇关于在自适应卡中一次性使用后如何禁用按钮的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆