Be part of JetBrains PHPverse 2026 on June 9 – a free online event bringing PHP devs worldwide together.

Umidissimo's avatar

HTML problem

Hi, I created this "box" where the 1% creator code is automatically written, but to apply it the person needs to press enter "inside the box". Is it possible to put it automatically sent without having to press send?

This is the code:

<form method="post" action="/creator-code/add">
<div class="input-group">
<input type="text" class="form-control" name="code" placeholder="Enter a creator code" value="1%" {{ basket.creator_code ? 'disabled' }}>
<div class="input-group-append">
{% if basket.creator_code %}
<a href="/creator-code/remove" class="btn btn-danger">Remove</a>
{% else %}
<button type="submit" class="btn btn-primary">Add</button>
{% endif %}
</div>
</div>
0 likes
4 replies
Sergiu17's avatar

You want to submit the form when you press Enter without selecting the input?

If I got it right, then you can add autofocus to the button

<button type="submit" class="btn btn-primary" autofocus>Add</button>

Or some javascript can help here

Umidissimo's avatar

I managed to set it to be pressed automatically but now it's as if it were doing it in a loop. it only have to do it once. Do you know how to do it?

    <form id="creatorCodeForm" method="post" action="/creator-code/add">
        <div class="input-group">
            <input type="text" class="form-control" id="creatorCodeInput" name="code" placeholder="Enter a creator code" value="1%" {{ basket.creator_code ? 'disabled' }}>
            <div class="input-group-append">
                {% if basket.creator_code %}
                <a href="/creator-code/remove" class="btn btn-danger">Remove</a>
                {% else %}
                <button type="submit" id="submitButton" class="btn btn-primary">Add</button>
                {% endif %}
            </div>
        </div>
    </form>

    <script>
        // Variabile per tracciare se il form è stato inviato
        let formSubmitted = false;

        // Funzione che invia il form automaticamente
        function autoSubmitForm() {
            if (!formSubmitted) {
                var inputField = document.getElementById('creatorCodeInput');
                if (inputField.value === '1%') {
                    formSubmitted = true; // Imposta il flag per evitare invii multipli
                    document.getElementById('creatorCodeForm').submit();
                }
            }
        }

        // Disabilita il form per evitare invii multipli
        function disableForm(event) {
            if (formSubmitted) {
                event.preventDefault(); // Previene l'invio del form se è già stato inviato
                return;
            }
            formSubmitted = true; // Imposta il flag per evitare invii multipli
            document.getElementById('creatorCodeInput').disabled = true;
            document.getElementById('submitButton').disabled = true;
        }

        // Assicuriamoci che il codice venga eseguito una volta che la pagina è completamente caricata
        document.addEventListener('DOMContentLoaded', function() {
            document.getElementById('creatorCodeForm').addEventListener('submit', disableForm);
            autoSubmitForm();
        });
    </script>

Snapey's avatar

You can watch the change event on the field and submit the form.

Please or to participate in this conversation.