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

Javascript 如何在服务器处理RoR/JQuery中的请求时禁用按钮,javascript,jquery,ruby-on-rails,Javascript,Jquery,Ruby On Rails,我有一个使用RoR、JQuery和Bootstrap生成的页面 该页面有三个操作按钮:编辑、删除和禁用 disable操作更改实体的状态并刷新页面 edit操作将用户发送到一个表单,用户可以在该表单中编辑实体 delete操作显示一个确认窗口,如果用户单击Yes,实体将被删除 我试图做的是在服务器根据操作处理请求时禁用这些按钮 我该怎么做?尝试使用$(“.btn”).attr(“disabled”、“disabled”)是不够的,因为如果用户单击删除,然后单击“No”,会发生什么情况?或者,

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

该页面有三个操作按钮:
编辑
删除
禁用

  • disable
    操作更改实体的状态并刷新页面
  • edit
    操作将用户发送到一个表单,用户可以在该表单中编辑实体
  • delete
    操作显示一个确认窗口,如果用户单击
    Yes
    ,实体将被删除
我试图做的是在服务器根据操作处理请求时禁用这些按钮

我该怎么做?尝试使用
$(“.btn”).attr(“disabled”、“disabled”)
是不够的,因为如果用户单击
删除
,然后单击“No”,会发生什么情况?或者,当单击
edit
时,用户决定返回历史记录?在所有这些情况下,按钮仍处于禁用状态


谢谢。

您使用了错误的jQuery函数,请尝试:

$('#myInputId').prop('disabled', 1);
元素属性(如disabled和readonly)需要prop()方法和布尔值来更改状态

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


希望有帮助

您是否正在使用AJAX提出请求?如果是,请检查这一点,这确实很有帮助。但是,缺少的是某种消息/通知,表明请求正在处理中。您知道我如何使用jquery/bootstrap/etc实现这一点吗?这很容易做到,如果您将AJAX代码添加到问题中,我可以重点介绍如何具体集成通知。否则,我在上面的答案中添加了一个一般性的建议。我想显示一个模式,其中包含一条消息,说明流程正在处理中,但当我单击
Edit
按钮时,表单不会呈现在新页面中。你知道我怎么修吗?要添加代码吗?如果您在问题中添加JavaScript代码,它可能会帮助我更有效地回答问题。另外,您想使用引导或其他库生成模式吗?