Ondersteuning » Code oplossingen gezocht » ik wil u message is ontvangen (contact form)na paar seconden verdwijnen?

  • Hallo,
    ik heb de meeste probleem opgelost met contact form .
    het werkt goed ik kan email sturen en ontvangen.plus ik kan het beveiligen met captcha plug in. geen probleem de spam probleem is opgelost bij provider. spam probleem is kwam door autofill off maar wanneer ik captcha plug in geinstalleerd deze spam melding is ook weg.
    ik heb nu een kleine probleem wanneer ik email versturen via mij web pagina ik heb een klas success dat zegt dank u wel voor u boodschap (het is in Engels op dit moment).
    ik wil deze boodschap na paar seconden verdwijnen ik heb overal gezorgd voor oplossing
    w3school forums youtube etc.
    ik heb na goed bestuderen deze antwoord gevonden:

    document.addEventListener('DOMContentLoaded', function () {
        let container = document.querySelector('.success'),
            form = document.querySelector('#contact');
    
        if (form != null) {
            form.addEventListener('submit', function () {       
                setTimeout(function(){
                    container = document.querySelector('.success');
                    if (container == null) return; // abort if element isn't available
    
                    container.style.display = 'none';
                }, 10000);
            });
        }
    });

    ik heb deze code bestudeert en geprobeerd van alle kanten . maar ik kunde niet tot nu toe oplossing vinden. ik heb in w3school gezocht in youtube gezocht maar het lijkt hij is goed maaar waar is de fout dan ?
    mij message klas is : success en mij form ID is contact

    dank u wel

    De pagina waar ik hulp bij nodig heb: [log in om de link te zien]

9 reacties aan het bekijken - 1 tot 9 (van in totaal 9)
  • Guido

    (@guido07111975)

    Hoi,

    Neem aan dat je mijn script nog gebruikt.
    Omdat je site jQuery laadt, kan de functie een stuk korter (zie punt 2).

    1) Wijzig de succes boodschap onderaan in mijn script naar:

    echo '<div id="success" class="success">'.$success.'</div>';

    2) Voeg daarna dit toe onderaan bestand footer van je thema, net vóór de wp_footer() functie:

    <script>
    $(document).ready(function () {
      setTimeout(function () {
          $('#success').hide();
      }, 10000);
    });
    </script>

    Let op: ik zie dat je site een test site is. Normaal gesproken moet je geen wijzigingen rechtstreeks in een thema toevoegen omdat je die wijzigingen kwijt bent als je het thema updated.

    Guido

    Thread starter johannes999

    (@johannes999)

    dank u wel ,
    hartelijke bedankt voor u vriendelijkheid . het is gelukt.
    nu is mij contact form bijna klaar net als ik wens.
    de probleem met spam ik zie wanneer ik autofill off doen ik krijg mij email als spam in mij mail box bij de provider en wanneer ik autofill on doen dan de spam melding verdwijnt.
    ik heb een captcha plug in geinstalleerd dan als ik autofill off doen ik krijg geen spam melding dank zij deze plug in.
    er blijft alleen 1 kleine probleem . ik wilde na submit klikken alle teksten in de velden na paar seconden net als success message leeg maken .
    ik zag dat ik kunde 2-e button maken met reset en dan handmatig velden leeg maken .
    maar ik wil dat nadat submit geklikt na paar seconden alle velden leeg gemaakt net als success message.
    zou die probleem ook op soort gelijk wijze kan waar gemaakt worden?

    <script>
    $(document).ready(function () {
      setTimeout(function () {
          $('#???').hide();
      }, 10000);
    });
    </script>

    als kan wat precies moet staan in $(”).hide (); een array van velden met namen?
    extra code bij net als echo ????
    dank u wel

    Guido

    (@guido07111975)

    Graag gedaan.

    Velden leegmaken na succesvol verzenden heeft geen zin op deze manier. Want je verbergt het met deze code alleen voor het oog via display:none;, maar het blijft aanwezig in de broncode.

    Je kunt beter een redirect naar een andere pagina doen (na succesvol verzenden), met daarop een “dank u” mededeling. Deze redirect kan met JavaScript of jQuery.

    Maar ik had al eerder doorgegeven dat je beter een kant-en-klare plugin hiervoor kunt gebruiken. Waarom al die moeite als er al vele plugins voor bestaan?!

    Guido

    Thread starter johannes999

    (@johannes999)

    dank u wel Gideo,
    als ik wil website bouwen dan ik wil alleen beetje inzicht hebben hoe alles in elkaar ziet.
    ik heb dank zij jou heleboel geleerd .
    ik heb ook jou plug in gedownload maar niet getest,mischien later.
    ik weet nu hoe precies in elkaar ziet met eigen style contact form maken.
    ik zoude nooit kunnen denken als ik had niet geprobeerd hoveel werk en kennis nodig is voor simpele contact form te maken en de problemen die met zich mee brengt.
    1-ik heb in youtube gezien hoe ze met nieuwe pagina maken met een naam bijv.dank u wel denk jij dat is profesioneel op deze manier te doen? of 2e knop met reset dan kan klant zelf kiezen wat moet het doen?
    2-wat zou u denken over autofill on of off. ik denk zelf off omdat er wordt heleboel namen en adresen verzameld.
    3-alleen voor inzicht het zou kunnen mogelijk zijn om velden leeg maken met jquery?
    ik ga mischien via linda.com beetje php en beetje js leren maar ik denk mischien beter is om gelijk met jquery te beginen en niet js. mischien voor php is ook laravel is makkelijker.
    kijk ik heb gelezen da basis van php en js in w3schools maar zonder praktijk voorbeelden het is moelijk om alleen verder te komen. of u moet mentor of speciale booken hebben. ik weet niet of voor php en js zulke boeken zijn maar ik ga eerst via lynda.com iedere dag half uurtje php en half uurtje js of jquery leren. paar keer per week.
    hartelijke bedankt

    Guido

    (@guido07111975)

    Maak eens een nieuwe pagina met een bedank tekst.

    Verwijder dit uit mijn code:

    $success = 'Thank you! You will receive a response as soon as possible.';

    En verwijder ook dit:

    echo '<div id="success" class="success">'.$success.'</div>';

    En voeg dit toe op dezelfde plek:

    echo '<script type="text/javascript">window.location="link-naar-jouw-bedankpagina"</script>';

    (vergeet niet de link (hele URL) van je bedankpagina in bovenstaande code te zetten)

    Word je nu doorgestuurd na verzenden vh formulier?

    Guido

    Thread starter johannes999

    (@johannes999)

    dank u wel hartelijke bedankt,
    ik laat zo op dit moment later als ik van gedachten veranderd ik heb jou code .
    hartelijke bedankt voor al u informaties.
    johannes

    Thread starter johannes999

    (@johannes999)

    Hallo,
    ikheb hier een kleine probleem .wanneer ik naar beneden scrol en paar keer op spatie balk tikt het submit button verdwijnt helemaal.
    toen ik heb bedacht ik ga deze script weghalen :

    <script>
    $(document).ready(function () {
      setTimeout(function () {
          $('#???').hide();
      }, 10000);
    });
    </script>

    de probleem is weg .
    dus in deze script er is iets fout die heeft te maken met submit .
    ik weet niet of u kunt zie dat?
    dank u wel

    Guido

    (@guido07111975)

    Bij mij verdwijnt de button na 10 seconden, dus je hebt vast een script ergens staan die aan de ID of klasse vd button gekoppeld is.

    Guido

    Thread starter johannes999

    (@johannes999)

    wat dom van mij ik heb hier

    <script>
    $(document).ready(function () {
      setTimeout(function () {
          $('#success').hide();
      }, 10000);
    });
    </script>
    

    in plaats van #success #submit verplaatst de script.
    ik ben 3 dagen erg grip dus ik kan helemaal niet helder denken.
    dank u wel
    fijne avond

9 reacties aan het bekijken - 1 tot 9 (van in totaal 9)