javascript - 如何禁用按钮

标签 javascript jquery html

如何使用 javascript 或 jquery 禁用按钮?如果发生某些操作,我想禁用按钮。示例 如果 order_status 为“已接受”,则“接受”按钮将被禁用。我在互联网上搜索,但我不明白为什么我的代码不适合我。我尝试了 javascript 和 jquery(参见下面的代码),但没有任何反应,按钮没有禁用。

这是我的代码

<div class="form-group">
 <label for="order_status" class="col-sm-2 control-label" style="width:20%;">Order Status</label> 
 <input type="text"  class="form-control" name="order_status" id="t_order_status" style="width:80%;" placeholder="" value="" required="required" readonly>
 </div>


<button type="button" input style="background-color:#4CAF50;color:white;border-color:#000000;" name="submitDelivered" id="submitDelivered" class="btn btn-success" data-toggle="modal" data-target="#myDeliverModal" onclick="deliver('<?= $_POST['order_id'] ?>')" > Delivered </button>
<button type="button" input style="background-color:#0000FF;color:white;border-color:#000000;" name="submitAccept" id="submitAccept" class="btn btn-success" data-toggle="modal" data-target="#myAcceptModal" onclick="accept('<?= $_POST['order_id'] ?>')" > Accept </button>
<button type="button" style="background-color:#FFFF00;color:black;border-color:#000000;" class="btn btn-success" data-toggle="modal" data-target="#myDropdown" onclick="send('<?= $_POST['order_id'] ?>')"> Send </button> 
<button type="button" input style="background-color:#f44336;color:white;border-color:#000000;" name="submitCancel" id="submitCancel" class="btn btn-success" data-toggle="modal" data-target="#myCancelModal" onclick="cancel('<?= $_POST['order_id'] ?>')">Cancel</button> 


<script>
 function viewOrder(order_id, order_id, user_id, order_date, order_time, order_deliveryCharge, order_totalAmount, address, coordinates, driver_number, order_status) {
 document.getElementById("t_order_id").setAttribute("value", order_id); 
 document.getElementsByName("ORDER_ID_MODAL_2")[0].setAttribute("value", order_id);
 document.getElementById("t_user_id").setAttribute("value", user_id);
 document.getElementById("t_order_date").setAttribute("value", order_date); 
 document.getElementById("t_order_time").setAttribute("value", order_time); 
 document.getElementById("t_order_deliveryCharge").setAttribute("value", order_deliveryCharge); 
 document.getElementById("t_order_totalAmount").setAttribute("value", order_totalAmount); 
 document.getElementById("t_address").setAttribute("value", address);
 document.getElementById("t_coordinates").setAttribute("value", coordinates); 
 document.getElementById("t_drivers_number").setAttribute("value", driver_number); 
 document.getElementById("t_order_status").setAttribute("value", order_status);
 document.getElementById("ORDER_MODAL_ACCEPT").setAttribute("value", order_id);
 document.getElementById("ORDER_MODAL_DELIVER").setAttribute("value", order_id);
 document.getElementById("ORDER_MODAL_CANCEL").setAttribute("value", order_id);


 }
function accept() { //THIS IS MY CODE FOR JAVASCRIPT 

    var x = document.getElementById("order_status").value;

 if(x == "Accepted"){
     document.getElementById("submitAccept").disabled = true;
 }
}

这是我的 JQUERY 代码

 $(document).on("click", ".submitAccept", function (e) {
          $(".submitAccept").attr("disabled", true);
}

我也尝试过这个

$(function () {
  ($("#order_status").keyup(function (){
      if ($("#order_status").val() == 'Accepted') {
          ('#submitAccept').prop('disabled',true);
      }else{
          ('#submitAccept').prop('disabled', false);
      }
  })
 )};
);

  </script>

我的大脑一片空白,我现在正在挣扎。我希望你们能理解我。我希望能帮助我解决我的问题,我非常需要它来完成我们的订购系统的交易。

最佳答案

如果您尝试使用 JQuery 按 id 选择元素,则必须使用 # 选择器:see jQuery selectors .

如果您使用的是 jQuery 1.6+,请使用 prop() 而不是 attr()

$(document).on("click", "#submitAccept", function () {
          $(this).prop("disabled", true);
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.0/jquery.min.js"></script>
<div class="form-group">
 <label for="order_status" class="col-sm-2 control-label" style="width:20%;">Order Status</label> 
 <input type="text"  class="form-control" name="order_status" id="t_order_status" style="width:80%;" placeholder="" value="" required="required" readonly>
 </div>

<button type="button" input style="background-color:#0000FF;color:white;border-color:#000000;" name="submitAccept" id="submitAccept" class="btn btn-success" data-toggle="modal" data-target="#myAcceptModal" > Accept </button>

关于javascript - 如何禁用按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46604536/

相关文章:

javascript - 在 CkEditor 中使用 HTML5 兼容的表格

javascript - 当 Div 到达页面底部时停止移动

javascript - 在一个函数中加载图像

javascript - 无法访问 JavaScript 中的任何库

jquery - Bootstrap Twitter 下拉菜单 : Make the parent follow the link

jquery - 鼠标悬停鼠标悬停无法正常工作

jquery - 如何通过使用 jquery 添加该表的行来获取表总数

javascript - 单击按钮时更改 facebook Open Graph 协议(protocol)值

css - 不能将垂直菜单列表移到最左边,它在水平菜单列表下面

html - 如何使用从亮度到黑暗的颜色自动生成类?