Как получить кнопку "Далее" на экранной клавиатуре Android вместо кнопки "Go" в телефонной запинке
Я разрабатываю приложение Phonegap и имею много материалов в форме заявки. Я получаю кнопку Go на клавиатуре Android. Я хочу заменить кнопку go следующей кнопкой. Как только нажатие кнопки Go (как показано на рисунке) отправляет форму.
В nativeroid мы можем указать следующую кнопку в XML, но для Phonegap, как указать следующую кнопку вместо кнопки go.
Некоторые устройства Samsung по умолчанию имеют кнопку Next Prev.
![By Default there is Go button. I need Next but in Phonegap]()
По умолчанию есть кнопка Go. Мне нужно Далее, но в Phonegap. есть ли какой-либо плагин для указания этого для android.
Ответы
Ответ 1
Наличие кнопки "Далее" вместо "Перейти" с Android на данный момент невозможно.
Android всегда будет отображать кнопку "Перейти" для полей ввода формы. "Go" в основном отражает то же поведение, что и кнопка "Enter" на обычном браузере и клавиатуре. Вы можете достичь кода ниже:
if (event.keyCode == 13) {
//Handling "Go" Button to move to next input field
}
ИЛИ
Если ваши поля ввода больше, тогда наилучшим решением будет зависимость данных.
Если вы хотите запретить пользователям отправлять форму, вы можете поместить необходимые проверки в форму с помощью javascript, где вы можете указать зависимость данных внутри поля ввода с обязательным, что помогает перемещать курсор в определенное поле, которое вы указали в зависимости от данных.
<input type="text" id="first" data-dependency="second" />
<input type="text" id="second" data-dependency="third" />
<input type="text" id="third" />
Он перемещает фокус в следующие поля формы до своего последнего поля. Как только последнее поле достигнет, вы можете позволить ему действовать как ввод. Таким образом, в основном Go будет продолжать перемещать фокус на следующие поля до его последнего поля, а затем будет отправлять форму.
Ответ 2
Было сказано, что если есть поля ввода без или вне тега формы, вы получите следующую кнопку в виде кнопки
Насколько я знаю, нет правильного решения для получения следующей кнопки вместо go. Есть только обходные пути. Наиболее распространенным является захват кнопки "Go", как введите ключ (код ключа "13" ) в javascript и сделайте свою работу.
$('selector').on("keydown",function(event){
if (event.keyCode == 9) {
//you got tab i.e "NEXT" Btn
}
if (event.keyCode == 13) {
//you got enter i.e "GO" Btn
}
});
для вкладки вместо ввода
Были также источники, которые уже обсуждают эти GO Vs NEXT
Ответ 3
Вы можете просто использовать следующую логику, чтобы пользователи могли сосредоточиться на следующем поле ввода. Это лучший подход, который я использовал в одном из приложений PhoneGap, поскольку в настоящее время нет сторонних плагинов, которые предлагают такую функциональность.
x$('#input1').on('keyup', function(e) {
var mEvent = e || window.event;
var mPressed = mEvent.keyCode || mEvent.which;
if (mPressed == 13) {
// On enter, go to next input field
document.getElementById('input2').focus();
}
return true;
});
Ответ 4
Пробовали ли вы использовать параметр tabindex
в своих полях ввода?
Действие клавиатуры по умолчанию должно отображаться следующим образом, если обнаружено tabindex
.
Пример:
<input name="first" tabindex="1" /> //should show next
<input name="second" tabindex="2" /> //should show next
<input name="third" tabindex="3" /> //should show go
Ответ 5
EditText android: imeOptions = "actionNext"