2017-06-20 3 views
-2

Ich versuche das Ereignis eines Links zu blockieren, nicht ein Produkt in einem AddToCart Button hinzuzufügen, aber funktioniert nicht gut, ist der Link noch aktiviert, haben Sie eine Idee, was los ist? Danke !!!Verhindern Standard funktioniert nicht gut

$(document).ready(function(){ 
 
    function buyButtonVerify() { 
 
     $('.buy-button.buy-button-ref').on('click', function(ev){ 
 
      ev.preventDefault(); 
 
     }); 
 
    } 
 
    $('[name=text1], [name=text2]').keyup(function(){ 
 
     if($(this).val().length !=0){ 
 
      $('.buy-button').removeClass('enable'); 
 
      $('.buy-button').click(buyButtonVerify); 
 
     } 
 
    }); 
 
    $('[name=text1], [name=text2]').keydown(function(){ 
 
     if($(this).val().length !=0){ 
 
      $('.buy-button').removeClass('enable'); 
 
      $('.buy-button').click(buyButtonVerify); 
 
     } 
 
    }); 
 
    $('[name=text1], [name=text2]').focus(function(){ 
 
     if($(this).val().length !=0){ 
 
      $('.buy-button').removeClass('enable'); 
 
      $('.buy-button').click(buyButtonVerify); 
 
     } 
 
     
 
    }) 
 
});
<input type="text" placeholder="text 1*" name="text1" class="text1" data-target="previewText1" maxlength="11" /> 
 
<input type="text" placeholder="text 2*" name="text2" class="text2" data-target="previewText2" maxlength="11" /> 
 
<br /> 
 
<br /> 
 
<a target="_top" class="buy-button buy-button-ref" href="/redirect=true&amp;sc=1" style="display:block">Comprar</a>

+0

Benötigen Sie die HTML, um zu sehen, ob die Selektoren korrekt sind. – zer00ne

+0

Ich aktualisiert mit dem HTML –

+0

Also ist das Ziel, die Schaltfläche deaktiviert zu haben, bis etwas in beide Textfelder eingegeben wird? – zer00ne

Antwort

2

Sie sind die falsche Klick-Ereignis zu erfassen. Benutze das stattdessen.

$('.buy-button.buy-button-ref').on('click', function(e){ 
     e.preventDefault(); 
    }); 

Sie müssen das Ereignis vom Klick erfassen, nicht vom übergeordneten Element.