Fix player form submission using Alpine-driven hidden inputs
Removed name="players" from checkboxes and replaced with a single x-for block generating hidden inputs from selectedPlayers state, ensuring correct submission regardless of active step. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -173,8 +173,9 @@
|
|||||||
{% for u in all_users %}
|
{% for u in all_users %}
|
||||||
<label class="player-option"
|
<label class="player-option"
|
||||||
data-name="{{ u.name | lower }}"
|
data-name="{{ u.name | lower }}"
|
||||||
x-show="{% if u.id == user.id %}true{% else %}!playerSearch || $el.dataset.name.includes(playerSearch.toLowerCase()){% endif %}">
|
x-show="{% if u.id == user.id %}true{% else %}!playerSearch || $el.dataset.name.includes(playerSearch.toLowerCase()){% endif %}"
|
||||||
<input type="checkbox" name="players" value="{{ u.id }}"
|
:class="selectedPlayers.includes('{{ u.id }}') ? 'selected' : ''">
|
||||||
|
<input type="checkbox" value="{{ u.id }}"
|
||||||
{% if u.id == user.id %}checked disabled{% endif %}
|
{% if u.id == user.id %}checked disabled{% endif %}
|
||||||
@change="togglePlayer('{{ u.id }}')"
|
@change="togglePlayer('{{ u.id }}')"
|
||||||
:checked="selectedPlayers.includes('{{ u.id }}')">
|
:checked="selectedPlayers.includes('{{ u.id }}')">
|
||||||
@@ -190,7 +191,6 @@
|
|||||||
</label>
|
</label>
|
||||||
{% endfor %}
|
{% endfor %}
|
||||||
</div>
|
</div>
|
||||||
<input type="hidden" name="players" value="{{ user.id }}">
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
@@ -293,6 +293,11 @@
|
|||||||
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
{# Hidden inputs driven by Alpine — always submitted regardless of step #}
|
||||||
|
<template x-for="pid in selectedPlayers" :key="pid">
|
||||||
|
<input type="hidden" name="players" :value="pid">
|
||||||
|
</template>
|
||||||
|
|
||||||
</form>
|
</form>
|
||||||
</div>
|
</div>
|
||||||
{% endblock %}
|
{% endblock %}
|
||||||
|
|||||||
Reference in New Issue
Block a user