Question

J'ai une instruction if qui doit ressembler à ceci: UPDATE

 $("input#textbox").keypress(function(e){
    key==e.which;
    if($("input#textbox").length <=7 && (key===13 || $("div#search-button").click())){
       /////SOME FUNCTION////
    };
 });

Je suis en train d'exécuter la « une fonction » zone que si la longueur d'entrée est <= 7 et soit sur la touche entrée est enfoncée ou le bouton « recherche » est cliqué.

De plus, je veux combiner ces 2 différents initiateurs de fonction afin qu'ils exécutent la même fonction, mais ne savent pas comment le faire:

  $("input#textbox").keypress(function(e){
     FUNCTION A
  };

  AND 

  $("div#search-button").click(function(){
     FUNCTION A
  };
Était-ce utile?

La solution

EDIT:

est ce que vous avez à faire:

  1. Je suppose que vous voulez que la longueur du texte et non nombre de zones de texte.
  2. Vous voulez exécuter fonctionn lorsque vous appuyez sur entrez ou faites une recherche parmi zone de texte est cliqué:

     $("input#textbox").keypress(function(e){
        key==e.which;
        if (key === 13) // if enter is pressed
        {
           if ("#textbox").val().length >= 7) //if textbox has more than 7 characters
           {
               functionA();
           }
        }
     });
     $("div#search-button").click(function(){ functionA();});

HTH

Autres conseils

Voici comment je le ferais:

$("#search-button").click(function(){
    $("#textbox").keypress(function(e,clicked){
        (clicked || e.which===13) && $(this).val().length < 8 && functionA();
    }).trigger("keypress",[true]);
});
function functionA(){
    alert("hey!");
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top