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



我使用jQuery在页面中插入了一个隐藏表单,我正在使用按钮单击事件提交表单。隐藏的表单已在firefox中提交,但没有在Chrome。

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

$('#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。

使用此JavaScript代码。

$("#btnSubmitOrder").click(function() {
 document.forms['login1'].submit();
});

最新更新