web-dev-qa-db-ja.com

無効になっている「カートに追加」ボタンをクリック

Woocommerceにはカートに追加するボタンがあります。関連するオプションがすでに選択されている場合にのみ、カートに追加されます。それまでは、ボタンは無効になっています。

<button class="single_add_to_cart_button button alt" type="submit"
    disabled="disabled" 
    title="Select product options before adding this product to your cart."
    >Add to cart</button>

デフォルトでは - buttonをクリックしても無効になっているので何も起こりませんが、フィードバックがないためにユーザーを混乱させる可能性があります。

私がやりたいことは、これが起こったときのアラートとしてtitleポップアップを使うことです。

テーマのカスタムスクリプトオプションに追加された、次のjQuery関数を試してみました。

(function($) {
  "use strict";
  jQuery("button.single_add_to_cart_button[type=submit]").click(function(){
    var isDisabled = jQuery(this).is(':disabled');
    if (isDisabled){
      alert(jQuery("button.single_add_to_cart_button[type=submit]").attr('title'));
    }
  });
})(jQuery);

しかし、何も引き起こされず、警告もありません。また、jQuery$に置き換えてみましたが、うまくいきません。

_ update _ これも試してみました:

  jQuery(".variations_button").on("button.single_add_to_cart_button[type=submit]","click", function(){
        var isDisabled = jQuery(this).is(':disabled');
    if (isDisabled){
      alert(jQuery("button.single_add_to_cart_button[type=submit]").attr('title'));
    }
  });
1
kneidels

無効化された要素はマウスイベントを発生させないので、ボタンをdivで囲みイベントをキャッチする必要があります。

3
Sören Wrede