JSP: две кнопки отправки в одной форме - PullRequest
0 голосов
/ 28 апреля 2011

У меня есть две кнопки отправки в одной форме на странице JSP, каждая из которых отображается в форме в зависимости от регистра.

Проблема в том, что одна из кнопок отправки отправляет форму,а другой нет.

вот HTML-форма

       <form  name="stdActivationForm"  id="stdActivationForm" action="ParentManagementServlet" method="post" onsubmit="return validateStudentActivationForm()">
            <input class="${isActivated? 'hideDiv':'showDiv'}" type="submit" value="confirm"  name="submit" onclick="submitForm('add')"/>
            <input class="${parent != null? 'showDiv':'hideDiv'}" type="submit" value="update"   name="submit"  onclick="submitForm('update')"/>

        </form>

, а вот функция javascript

  function submitForm(btnName)
        {
            var form = document.getElementById("stdActivationForm");
            if (btnName =='add')
                document.form.submit();
            else if(btnName =='update')
                document.form.submit();
        }

Ответы [ 3 ]

2 голосов
/ 28 апреля 2011

Избавьтесь от onclick.Вам это не нужно здесь.type="submit" уже отправляет форму.Вероятно, ваша конкретная проблема вызвана тем, что onsubmit из <form> вернул false.

2 голосов
/ 28 апреля 2011

Я думаю, что ваша функция JavaScript должна возвращать true.В качестве альтернативы вы можете просто удалить ссылку onclick, и она должна работать только с type = "submit".

Good luck.

0 голосов
/ 28 апреля 2011

Попробуйте изменить тип ввода кнопок на "button" и метод на:

function submitForm(btnName)
{
   // skip validation for updates, remove btnName =='add' && when it is working
   if (btnName =='add' && !validateStudentActivationForm())
   {
     return;      
   }   
   document.forms["stdActivationForm"].submit();
}

Обе кнопки все равно в настоящее время отправляются на один и тот же сервлет.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...