2016-02-25 4 views
1

Мне нужно определить второй ввод после первого нажатия. Корпус: У меня есть форма ввода, сначала введите, чтобы выбрать город, второй введите, чтобы вызвать подачу. Есть какой-либо способ сделать это?Как определить, что второй ввод запускается при нажатии клавиши?

$("#this_is_the_input").keyup(function(e) { 
    if (e.keyCode == 13) { 
     This is the first enter to select the city. 
     How do I detect the second enter to submit? 
    } 
}); 
+0

Можете ли вы уточнить, второй ввести? Если они нажмут enter, оставьте поле, а затем верните и нажмите enter, это также будет считаться вторым вводом, или это будет новый первый вход? – Taplar

+0

Вы можете увидеть, имеет ли поле город значение. Если это произойдет, отправьте форму. 'if (e.keyCode == 13 &&! {{имя входного класса}}. val())' и 'else if (e.keyCode == 13 && {{имя входного класса}}. val())' – spasticninja

+0

Ваш выбранный город вводит код JS, чтобы предотвратить событие от пузырей до отправки триггера. Что вы используете для автозаполнения города/типа? – CrnaStena

ответ

0

Нечто подобное должно работать на вас. Переменная кликов отслеживает, сколько событий произошло. Надеюсь, у вас есть правильный keyCode. Если второй, то он вызывает второе предупреждение. Скажи мне, если это не то, что тебе нужно.

var clicks=0; 
$("#this_is_the_input").keyup(function(e) { 
     console.log("clicks: "+clicks); 
    if(e.keyCode == 13) 
      clicks++; 
    if (e.keyCode == 13 && clicks == 1) { 
     console.log("first click"); 

    } 
    else if(e.keyCode == 13 && clicks == 2){ 
    console.log("second click"); 
    } 
}); 
+0

этот код никогда не будет показывать «второй клик», так как вы '+ щелчки' всегда делают нечетные подсчеты. move ++ click before if statement, см. [jsFiddle] (https://jsfiddle.net/o9y9v2dh/). – CrnaStena

+0

Лично я, вероятно, попытаюсь использовать элемент данных на Элементе, чтобы он был более автономным. – Taplar

+0

Спасибо @CrnaStena – pritesh

0

попробовать это:

count = 0 
$("#this_is_the_input").keyup(function(e) { 
    if (e.keyCode == 13) { 
     if(count == 0) 
     { 
      //This is the first enter to select the city. 
     }else 
     { 
      //This is the second enter to submit. 
     } 
    count++; 
    } 
}); 

 Смежные вопросы

  • Нет связанных вопросов^_^