Forums

The forums ran from 2008-2020 and are now closed and viewable here as an archive.

Home Forums JavaScript Form confirmation message w/out page refresh

  • This topic is empty.
Viewing 1 post (of 1 total)
  • Author
    Posts
  • #30549
    jmizi
    Member

    So I have this php form that works perfectly, that pops up in a modal window that works perfectly…. just one problemo: Submitting the form causes a page refresh, thus closing the window, and making it so I have to re-open the modal window to see the confirmation or error message.

    I know this involves Ajax which I am currently trying to learn. Was hoping someone can point me in the right direction.

    Here is the form:

    and the jquery script:


    //When you click on a link with class of poplight and the href starts with a #
    $('a.poplight[href^=#]').click(function() {
    var popID = $(this).attr('rel'); //Get Popup Name
    var popURL = $(this).attr('href'); //Get Popup href to define size

    //Pull Query & Variables from href URL
    var query= popURL.split('?');
    var dim= query[1].split('&');
    var popWidth = dim[0].split('=')[1]; //Gets the first query string value

    //Fade in the Popup and add close button
    $('#' + popID).fadeIn().css({ 'width': Number( popWidth ) }).prepend('Close');

    //Define margin for center alignment (vertical horizontal) - we add 80px to the height/width to accommodate for the padding and border width defined in the css
    var popMargTop = ($('#' + popID).height() + 80) / 2;
    var popMargLeft = ($('#' + popID).width() + 80) / 2;

    //Apply Margin to Popup
    $('#' + popID).css({
    'margin-top' : -popMargTop,
    'margin-left' : -popMargLeft
    });

    //Fade in Background
    $('body').append('
    '); //Add the fade layer to bottom of the body tag.
    $('#fade').css({'filter' : 'alpha(opacity=80)'}).fadeIn(); //Fade in the fade layer - .css({'filter' : 'alpha(opacity=80)'}) is used to fix the IE Bug on fading transparencies

    return false;
    });

    //Close Popups and Fade Layer
    $('a.close, #fade').live('click', function() { //When clicking on the close or fade layer...
    $('#fade , .popup-block').fadeOut(function() {
    $('#fade, a.close').remove(); //fade them both out
    });
    return false;
    });
Viewing 1 post (of 1 total)
  • The forum ‘JavaScript’ is closed to new topics and replies.