1

У меня возникли проблемы с отправкой формы, содержащей нормальную и jQuery submit.jQuery и по умолчанию struts 2 кнопки отправки в одной форме

Это фрагмент кода моего JSP:

<sj:head loadAtOnce="true"/> 

<s:form id="createModReadProjectForm" action="createProject" cssClass="internalForm" autocomplete="off"> 
    <s:token/> 

    <s:textfield name="collName" cssClass="textField internal" cssErrorClass="textFieldError internal" /> 
    <div id="assignCollaborators"> 

    </div> 

    <s:url action="assignCollabolator" id="assignCollaboratorUrl"/> 
    <sj:submit key="labels.button.addColl" targets="assignCollaborators" 
      id="assignCollButton" formIds="createModReadProjectForm" cssClass="button small" 
      href="%{assignCollaboratorUrl}"/> 

    <s:submit /> 
</s:form> 

jQuery submit кнопка только добавляет ввели в текстовое поле имя пользователя в ArrayList и список всех сохраненных пользователей в div с id="assignCollaborators" и это работает отлично.

Вынесено jQuery submit:

jQuery(document).ready(function() { 
    var options_assignCollButton = {}; 
    options_assignCollButton.jqueryaction = "button"; 
    options_assignCollButton.id = "assignCollButton"; 
    options_assignCollButton.name = "labels.button.addColl"; 
    options_assignCollButton.targets = "assignCollaborators"; 
    options_assignCollButton.href = "/CloudUML/assignCollabolator.action"; 
    options_assignCollButton.formids = "createModReadProjectForm"; 

    jQuery.struts2_jquery.bind(jQuery('#assignCollButton'),options_assignCollButton); 
}); 

Теперь, когда я хочу, чтобы отправить форму, с помощью последней кнопки отправки, ничего не происходит. Нет ошибок Java или JavaScript. Что может вызвать такое странное поведение? Почему jQuery submit работает нормально, когда нормальный Struts2 s:submit нет?

Уверен, что определены все необходимые действия и поля свойств.

EDIT:

Когда я создал простой JavaScript представить function and assign its to onclick` событие последнего представить, он работает должным образом.

function submitFunc() { 
     document.forms['createModReadProjectForm'].submit(); 
    } 
+0

Что происходит, когда вы нажимаете на второй (по умолчанию) submit без щелчка на плагине jQuery submit? Это работает? –

+0

Нет, это не так. Только когда я завершу удаление jQuery submit, он работает. Даже если я нажимаю или не на jQuery submit, struts submit не работает. –

+0

Какая версия struts2-jquery-plugin? –

ответ

1

Проблема заключается в том, что e.PreventDefault() предотвращает нормальный ввод в прессе, вводит внутри текстового поля формы.

См: http://code.google.com/p/struts2-jquery/source/browse/trunk/struts2-jquery-plugin/src/main/resources/template/js/struts2/jquery.struts2.js#947

Что об использовании обычной ссылки вместо кнопки?

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