Use Javascript, find if page is loaded for the first time, or due to errors

Mehr
3 Jahre 3 Monate her #106967 von crafter
crafter erstellte das Thema Use Javascript, find if page is loaded for the first time, or due to errors
Hi all

Is there a way, using Javascript, to determine if page is being loaded for the first time, or due to errors on the page.

I have a small Javascript function that attaches to the page load, so that a message appears for a few seconds before the page is shown. If the page is completed with validation errors, the Javascript is reloaded and the message is displayed again.

However, I would want the message to not display if the page is being returned to due to validation errors.

How can I determine if a page is being reloaded due to errors.

Bitte Anmelden um der Konversation beizutretten.

Mehr
3 Jahre 3 Monate her - 3 Jahre 3 Monate her #106968 von crafter
crafter antwortete auf das Thema: Use Javascript, find if page is loaded for the first time, or due to errors
Actually, I may have found a solution.

The secret may be in these lines in the survey_runtime.js file
function showStartPopups(){
    if(typeof showpopup=="undefined"){showpopup=1;}
    if(typeof startPopups=="undefined"){startPopups=[];}
    if(showpopup){
        $.each(startPopups,function(key, text){
            alert($("<div/>").html(text).text());// Parse HTML because of &#039;
        });
    }
}

A page loaded with errors contains this code (as an example)
showpopup=1;
startPopups=["One or more mandatory questions have not been answered. You cannot proceed until these have been completed.","One or more questions have not been answered in a valid manner. You cannot proceed until these answers are valid."];
whereas a page with no errors contains an empty startPopups array
showpopup=1;
startPopups=[]

therefore, checking for an empty startPopups array will get me the solution I require, it seems.
Letzte Änderung: 3 Jahre 3 Monate her von crafter. Begründung: removed data from startPopups

Bitte Anmelden um der Konversation beizutretten.

Mehr
3 Jahre 3 Monate her #106972 von DenisChenu
DenisChenu antwortete auf das Thema: Use Javascript, find if page is loaded for the first time, or due to errors
And you can replace showStartPopups function in template.js to test it.

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand (or search sondages pro).
An error happen ? Before make a new topic : remind the Debug mode .

Bitte Anmelden um der Konversation beizutretten.

Haben Sie schon bei unserer Kundenumfrage mitgemacht?

Verpassen Sie nicht Ihre Chance auf tolle Preise.

Klicken sie hier um teilzunehmen:

Jetzt starten

Jetzt loslegen!

Melden Sie sich jetzt an, und erstellen Sie in wenigen Minuten Ihre erste Umfrage.

Account einrichten