JS非页内联系后返回表单提交

时间:2010-12-29 17:56:51

标签: javascript jquery forms

我有一个表单和onSubmit,我弹出一个div,上面有一个链接,基本上说“你确定要提交这些数据吗?” (div中还有其他内容,但这不相关 - 使用confirm()不是一种选择。)

如果他们点击弹出式div中的链接,我需要继续提交表单:

<a href="" id="submitOverride">Yes, submit this data</a>

我坚持如何在点击此链接时返回表单提交。

编辑:这是我的js&amp; html到目前为止:

google.setOnLoadCallback(function()
{
    $('#submit').click(function(e) {
        acceptedProductCheck(e);
    });
});

function acceptedProductCheck(e)
{

    var needles = ['term1','term2','term3'];
    var haystack = $('#subject').val().toLowerCase() + ('#question').val().toLowerCase();
    haystack = haystack.split(' ');

    // check to see if #subject or #question contains 
    // a trigger term - if so, pop the div
    for (keyA in haystack) {
        for (keyB in needles) {
            if(haystack[keyA] == needles[keyB]) {
                showProductConfirmMessage(e);
            }
        }
    }

    return true;
}

function showProductConfirmMessage(e)
{
    e.preventDefault();

    $('#support').hide();
    $('#contactUs').slideUp('fast', function() {
        $('#productCheck').slideDown('fast');
    });

    $("#submitOverride").click(function(){
        $('form#contactUs').submit();
    });
}

HTML非常简单。它基本上是我的形式,隐藏的div显示出来。

<form id="contactUs">
  ...
</form>

<div id="#productCheck">
   <a href="" id="submitOverride">Yes, submit this data</a>
</div>

只需快速通知读取此内容的任何人:

我只能通过删除提交按钮并将其替换为常规按钮来实现此功能。我不确定为什么提交按钮很重要,但是当它存在时,.submit()将不起作用。

1 个答案:

答案 0 :(得分:0)

首先在链接href属性中使用空哈希:

<a href="#" id="submitOverride">Yes, submit this data</a>

在您的链接点击事件中,返回false:

$("#submitOverride").click(function(){
    $('form#contactUs').submit();
    return false;
});