You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用discord.py机器人实现点击按钮禁用其他指定按钮?

实现点击按钮禁用另一个按钮的方案

以下是几种主流技术栈下的实现方式,根据你的项目环境选择即可:

原生JavaScript

核心思路是获取目标按钮的DOM元素,在触发按钮的点击事件中修改目标按钮的disabled属性:

// 确保DOM加载完成后执行代码
document.addEventListener('DOMContentLoaded', function() {
  // 获取两个按钮元素(替换成你实际的ID或选择器)
  const statsBtn = document.getElementById('stats-btn');
  const shinyBtn = document.getElementById('shiny-btn');

  // 绑定Stats按钮的点击事件
  statsBtn.addEventListener('click', function() {
    // 禁用Shiny按钮
    shinyBtn.disabled = true;

    // 如果需要切换禁用/启用状态,用下面这句替换上面的代码
    // shinyBtn.disabled = !shinyBtn.disabled;
  });
});

jQuery

如果你的项目使用jQuery,代码会更简洁:

$(document).ready(function() {
  $('#stats-btn').on('click', function() {
    // 禁用Shiny按钮
    $('#shiny-btn').prop('disabled', true);

    // 切换状态写法:
    // $('#shiny-btn').prop('disabled', function(i, val) { return !val; });
  });
});

Vue.js(Vue 3)

在Vue框架中,通过响应式变量控制按钮的禁用状态:

<template>
  <button @click="toggleShinyDisabled">Stats</button>
  <button :disabled="isShinyDisabled">Shiny</button>
</template>

<script setup>
import { ref } from 'vue';

// 响应式变量控制Shiny按钮的禁用状态
const isShinyDisabled = ref(false);

// 点击Stats按钮时修改状态
const toggleShinyDisabled = () => {
  isShinyDisabled.value = true;
  // 切换状态写法:isShinyDisabled.value = !isShinyDisabled.value;
};
</script>

注意事项

  • 确保按钮的ID或选择器与代码中的一致,避免因选择器错误导致无法获取元素
  • 原生JS和jQuery代码要确保在DOM加载完成后执行(上述示例已包含处理逻辑)

内容的提问来源于stack exchange,提问作者Uemura

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.01 23:55:18