Форма возврата Отправить после JS Interstitial - PullRequest
1 голос
/ 29 декабря 2010

У меня есть форма и onSubmit, я выскакиваю div с ссылкой на нее, которая по сути говорит: «Вы уверены, что хотите отправить эти данные?» (В div есть и другие вещи, но это не относится к делу - использование подтверждения () не вариант).

Затем мне нужно продолжить отправку формы, если они щелкают по ссылке во всплывающем окне div:

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

Я застрял в том, как вернуть отправку формы при нажатии на эту ссылку.

Редактировать: вот мои js & 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 голосов
/ 30 декабря 2010

Прежде всего используйте пустой хеш в атрибуте ссылки href:

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

И в вашей ссылке клик событие, вернуть false:

$("#submitOverride").click(function(){
    $('form#contactUs').submit();
    return false;
});
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...