如何在服务器处理 RoR/JQuery 中的请求时禁用按钮

How to disable buttons while server handles a request in RoR/JQuery

本文关键字:请求 按钮 JQuery 服务器 处理 RoR      更新时间:2023-09-26

我有一个使用 RoR、JQuery 和 Bootstrap 生成的页面。

该页面有三个操作按钮: editdeletedisable .

  • disable操作更改实体的状态并刷新页面。
  • edit操作将用户发送到窗体,用户可以在其中编辑实体。
  • delete操作将显示一个确认窗口,如果用户单击Yes,则删除实体。

我正在尝试做的是禁用这些按钮,而服务器正在根据操作处理请求。

我该怎么做? 尝试使用$(".btn").attr("disabled", "disabled")是不够的,因为如果用户单击delete但随后单击"否"会发生什么? 或者当edit被单击但随后用户决定回到历史记录时? 在所有这些情况下,按钮仍然被禁用。

谢谢。

你用错了jQuery函数,试试:

$('#myInputId').prop('disabled', 1);

元素属性(如禁用和只读)需要 prop() 方法和布尔值来更改状态。

关于您的 jQuery AJAX 请求和为用户创建 UX 通知,您可以在构建 AJAX 请求时使用 beforeSend 选项来显示 AJAX 旋转 GIF 或将消息插入 DOM。

希望对您有所帮助!