Javascript 如果出现错误消息,如何防止事件发生?

Javascript 如果出现错误消息,如何防止事件发生?,javascript,jquery,html,validation,bootstrap-modal,Javascript,Jquery,Html,Validation,Bootstrap Modal,我有一个汽车的下拉列表。如果其中任何一个变为非活动状态,将显示一条错误消息。当显示错误消息时,如果我单击Route Car按钮,则应防止事件发生。i、 e不应显示任何模式弹出窗口 如何做到这一点 不活跃的汽车有萨博、法拉利、捷豹。选择这些选项时,将显示非活动消息 HTML 从按钮中删除data toggle=modal,data target attr(数据目标属性)。因此默认情况下,它不会打开modal(模式)。使用按钮的单击功能打开modal(模式),并在功能内检查选择了激活或非激活的汽车类

我有一个汽车的下拉列表。如果其中任何一个变为非活动状态,将显示一条错误消息。当显示错误消息时,如果我单击Route Car按钮,则应防止事件发生。i、 e不应显示任何模式弹出窗口

如何做到这一点

不活跃的汽车有萨博、法拉利、捷豹。选择这些选项时,将显示非活动消息

HTML

从按钮中删除data toggle=modal,data target attr(数据目标属性)。因此默认情况下,它不会打开modal(模式)。使用按钮的单击功能打开modal(模式),并在功能内检查选择了激活或非激活的汽车类型

<script type="text/javascript">
   var inactiveCar = false;
    $(document).ready(function () {

    $("#drp").on("change", function () {
        inactiveCar = false;
        var ddlTxt = $("#drp option:selected").text();
        $(".divInactive span").hide();
        $("#spninactive_" + ddlTxt).show();
        if ($("#spninactive_" + ddlTxt).length > 0) {
            inactiveCar = true; //inactive car found
        }
    })
});

$("#modalButton").on("click", function () {
    if (inactiveCar == false) { //inactive car is not selected so open popup
        $("#divCarPopUp").modal('show');
    }
});
</script>

如果所选项目处于非活动状态,可以使用以下命令禁用该按钮

$("#drp").on("change", function() {
  var ddlTxt = $("#drp option:selected").text();
  $(".divInactive span").hide();
  if ($("#spninactive_" + ddlTxt).length) {
    $("#spninactive_" + ddlTxt).show();
    $('input[value="Route Car"]').prop('disabled', true);
  } else
    $('input[value="Route Car"]').prop('disabled', false);
})

请参阅。

选择非活动选项时,请尝试禁用按钮

$(document).ready(function() {
$("#drp").on("change", function() {
    var ddlTxt = $("#drp option:selected").text();
    $(".divInactive span").hide();
    $("#spninactive_" + ddlTxt).show();
    if($("#spninactive_" + ddlTxt).length>0)
      $("input[value='Route Car']").attr("data-target","")
    else
      $("input[value='Route Car']").attr("data-target","#divCarPopUp")
})});

如果出现错误,则不应出现弹出窗口?它们如何变为非活动状态?似乎禁用或删除该选项也应该这样做。然后,只需看看select是否有值或not@charlietfl我已经实现了非活动错误消息。不需要担心。提供了示例列表。只是如果显示任何非活动错误消息,我不需要显示弹出窗口。提供了示例列表。听起来你来这里是想让别人帮你做事。这不是一个代码编写服务。我不想禁用该按钮,在单击按钮时不应出现弹出窗口。@Hazard那么应该发生什么事情……用户单击按钮,但什么也没有发生?这不是一个非常用户友好的界面,这是要求:@Hazard你应该去讨论这些要求。我看不出有任何理由不改变对更好的用户体验和更简单的实现的要求,更不容易出现错误。我不想禁用按钮。如果你不想禁用它,那么像这样更改数据目标道具检查我给的小提琴
$("#drp").on("change", function() {
  var ddlTxt = $("#drp option:selected").text();
  $(".divInactive span").hide();
  if ($("#spninactive_" + ddlTxt).length) {
    $("#spninactive_" + ddlTxt).show();
    $('input[value="Route Car"]').prop('disabled', true);
  } else
    $('input[value="Route Car"]').prop('disabled', false);
})
$(document).ready(function() {
$("#drp").on("change", function() {
    var ddlTxt = $("#drp option:selected").text();
    $(".divInactive span").hide();
    $("#spninactive_" + ddlTxt).show();
    if($("#spninactive_" + ddlTxt).length>0)
      $("input[value='Route Car']").attr("data-target","")
    else
      $("input[value='Route Car']").attr("data-target","#divCarPopUp")
})});