jQuery 如果选择了下拉菜单

jQuery If dropdown is selected

我正在尝试创建一个 jQuery 函数,如果在 WooCommerce 订单页面的下拉列表中选择了下拉列表 wc-completed ,该函数应该只 运行 。基本上,我希望在完成订单之前需要一个字段。

我试过一些 if 语句,但我不确定如何告诉 jQuery 如果在下拉菜单中选择了 wc-completed,它应该只 运行。我应该改用更改功能吗?

jQuery(document).ready(function($){
  if ($("select#order_status option:selected").val() === "wc-completed" && !$("body").hasClass("post-type-shop_order")) { 
    $("input#wcam-external-link-0").prop('required',true);
  }
});

您所拥有的仅在页面加载时运行,所以是的,您应该使用更改事件侦听器

jQuery(document).ready(function($) {

  $("select#order_status").change(function() {
      if ($(this).val() === "wc-completed" && !$("body").hasClass("post-type-shop_order")) {
        $("input#wcam-external-link-0").prop('required', true);
      }

    })
    // optional -- trigger change on page load
    .change()

});