繁体   English   中英

$(#form).submit()在Chrome浏览器中不起作用

[英]$(#form).submit() is not working in chrome browser

我已经使用jquery在页面中插入了一个隐藏的表单,并且我正在使用按钮单击事件上的jquery提交表单。隐藏的表单正在使用firefox提交,但不会在chrome中提交。

以下是我在document.ready函数上使用jquery插入的表格。

$('#leftnav').after(
       "<tr><td><form name='login1'" +        
                "action='https://abc.com/FormPost/Submit' method='post'" + 
                "id='login' >" + 
                "<input type='hidden' name='MerchantIdentifier' value='abc' />" + 
                "<input type='hidden' name='Url'" + 
                  "value='http://chcnq.chxcg.servertrust.com/one-page-checkout.asp'/>"+
                "<input type='hidden' name='Description'" +
                  "value='Volusion Order' />"+
                "<input type='hidden' name='Data' value='' />"+
                "<input type='hidden' name='TransactionIdentifier'"+ 
                  "value='12' />" + 
                "<input type='hidden' name='Amount' value='' />"+
                "<input name='Token' type='hidden' value='" + token + "' />"+
                "<input type='hidden' name='ErrorUrl' />" +
        "</form></td></tr>");

然后单击按钮,我写了以下代码:

$("#btnSubmitOrder").click(function() {
$("#login").submit();
});

请告知您为什么它无法在Chrome浏览器中运行。

尝试这个:

$("#btnSubmitOrder").click(function() {
  $("form[name=login1]").submit();
});

根据我的评论:

通常,一次提交两种形式的表单是一种不好的做法,但是:

1)您可以将目标iframe添加到这两种表单中。 这样一来,浏览器就不会由于提交任何一个而被重定向。

要么

2)您可以使用$ .ajax防止默认行为并将数据发送到#login表单url,然后(在回调时)在第一个表单上调用Submit。

使用此javascript代码。

$("#btnSubmitOrder").click(function() {

 document.forms['login1'].submit();

});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM