无法在弹出窗口liferay上提交表单

时间:2018-10-14 14:31:14

标签: javascript forms jsp liferay liferay-aui

我无法弄清楚为什么它不提交表单,而只是跳过了弹出窗口。我尝试了其他解决方案,但失败了。

我遇到的第一个问题是提交后,它将加载到同一弹出窗口上,而不是加载到父portlet上,并且提交后将不会关闭弹出窗口。单击提交按钮时,我能够解决关闭弹出窗口的问题,但不会提交表单。

在弹出模式中:

<form action="<%= actionURL %>" id="formModal" name="formModal">
        // all input fields here
    <button name="submitBtnModal" id="submitBtnModal" type="submit">
</form>

<aui:script use="liferay-util-window">
    A.one('#submitBtnModal').on('click', function(event) {
        document.formModal.submit();  // cannot submit form
        Liferay.Util.getOpener().closePopup('closedialog'); // will proceed to close pop up
         Liferay.Util.getOpener().refresh(); // can refresh parent page
    });
</aui:script>

解决方案已尝试但不起作用:

  1. 已从<form> to <aui:form>

  2. 更改
  3. 将类型更改为按钮,并在onclick提交按钮时添加一个JavaScript函数onSubmitModal()。

    function onSubmitModal(){document.getElementById(“ formModal”)。submit(); }

  4. 试图在<aui:script>

  5. 中添加javascript函数

在调试时,后端没有问题。日志上也没有错误。只是它不会提交并且无法调用表单中的<%= actionURL =>。

我无法弄清楚为什么在尝试了所有这些解决方案后仍不提交表单。

我的预期结果是提交表单后,它将调用<%= actionURL%>,获取所有这些输入字段数据,并在关闭后弹出并刷新父页面。

更新: 我已经解决了这个问题。感谢您尝试提供帮助的人。我将稍后发布我的解决方案,以供其他参考。

0 个答案:

没有答案