хотите отправить ajax-форму при вводе клавиши для кнопки a4j в jsf

#java #jsf #ajax4jsf

#java #jsf #ajax4jsf

Вопрос:

У меня есть форма ajax с a4j: commandbutton. Я хочу отправить форму при нажатии клавиши Enter. Я использую onkeypress на командной кнопке, чтобы проверить нажатие клавиши enter. Скрипт вызывается правильно, и после проверки keycode = 13 форма не отправляется. Он отправляется, только если я использую окно предупреждения.

Я знаю, что, поскольку я использую ajax, для обработки требуется некоторая задержка, поэтому это делается с помощью окна предупреждения. Но если я хочу, чтобы она отправлялась без окна предупреждения?? как это сделать?

Фрагмент кода: функция submitOnEnter(e) {

         var keycode;
        if (window.event) keycode = window.event.keyCode;
        else if (e) keycode = e.which;
        else return true;

    if (keycode ==13)
    {
    var form =#{rich:element('loginform:submituser')};
    alert('in alert' form.click()); // this works and form gets submitted
            //form.click(); // i want this to work.
    return false;
    }
 else
    return true;
 }
 

Заранее спасибо.

Ответ №1:

Для достижения этой цели вы можете использовать функциональность горячих клавиш richfaces.Я могу понять, что вы хотите отправить форму с помощью клавиши Enter. Если мое предположение верно, используйте следующий код

 <rich:hotKey key="return"
         handler="#{rich:element('Form_Name')}.submit()" 
         selector="#Form_Name"/>