Jquery 表单提交和帖子在Chrome中不起作用,但在firefox和IE中起作用

Jquery 表单提交和帖子在Chrome中不起作用,但在firefox和IE中起作用,jquery,forms,google-chrome,post,submit,Jquery,Forms,Google Chrome,Post,Submit,我已经看了好几个小时了。这是我看过的那个 我还研究了jquery提交 没有一个解决方案对我有效 问题:我有一个表单,它有一个按钮,该按钮有一个调用javascript方法的onclick。然后我在页面上有另一个表单,而不是在页面外的另一个表单,那就是post表单。在javascript中,我在该表单上调用.submit。它适用于Firefox和IE,但不适用于Chrome,在Chrome中,它会重新加载页面并保持在同一页面上。Firefox和IE打开新标签页,正确显示帖子页面。代码如下: &l

我已经看了好几个小时了。这是我看过的那个

我还研究了jquery提交

没有一个解决方案对我有效

问题:我有一个表单,它有一个按钮,该按钮有一个调用javascript方法的onclick。然后我在页面上有另一个表单,而不是在页面外的另一个表单,那就是post表单。在javascript中,我在该表单上调用.submit。它适用于Firefox和IE,但不适用于Chrome,在Chrome中,它会重新加载页面并保持在同一页面上。Firefox和IE打开新标签页,正确显示帖子页面。代码如下:

 <h:form id="mainForm>
  ...
     <h:commandLink id="testUrlButtonPost" onclick="submitPage()" 
        styleClass="secondaryButton" value="#{__VendorAdmin.test}"/>
  ...
</h:form>


<script type="text/javascript">

     function submitPage() {                             
         var url = $('#addEditCatalogForm\\:baseURL').val();
         document.getElementById("TestForm").action=url;
         $('#TestForm').submit();
     }
</script>


<form id="TestForm" name="TestForm" action="" method="post" target="_blank">
     <ui:repeat value="#{vendorCatalogView.punchOutCatalog.urlParameters}" var="parameter">
         <input type="hidden" name="#{parameter.name}" value = "#{parameter.value}"/>
     </ui:repeat>
</form>
我也尝试过:

$'formTestForm'。提交 将内容放入submit so submitfunctionevent{…};这使得它无法在任何浏览器中工作 document.getElementByIdTestForm.submit; 我正在使用JSF和primefaces

更新:!!! 因此,我在chrome inspect element工具中注意到以下错误:


我查了一下,它似乎处理ssl证书?但问题是,该网站是一个打孔式目录搜索,将有大量使用post的外部目录链接。因此,我不能只是手动添加ssl证书,也不希望我们的客户必须这样做。有什么解决办法吗?

所以在没有解决方案的情况下,我看了又看,开始尝试一些小的调整。我找到了解决办法

改变

<h:commandLink id="testUrlButtonPost" onclick="submitPage()" 
    styleClass="secondaryButton" value="#{__VendorAdmin.test}"/>
到Primefaces命令链接,并将onclick更改为oncomplete,这在chrome中实现了

<p:commandLink id="testUrlButtonPost" oncomplete="submitPage()" 
    styleClass="secondaryButton" value="#{__VendorAdmin.test}"/>
所以现在它适用于chrome、firefox和IE。chrome将在新窗口中打开,除非您有强制选项卡的扩展