recargarBtn.addEventListener('click', async () => let phoneRaw = phoneInput.value.trim(); let amount = selectedAmount;
<script> // Estado actual del monto seleccionado let selectedAmount = null; const amountBtns = document.querySelectorAll('.amount-btn'); const customAmountInput = document.getElementById('customAmount'); const phoneInput = document.getElementById('phoneNumber'); const recargarBtn = document.getElementById('recargarBtn'); const statusDiv = document.getElementById('statusMessage'); mi telcel recarga
// Limpiar formato de número (solo dígitos) let phoneDigits = phoneRaw.replace(/\D/g, ''); if (!phoneDigits ); recargarBtn
// Cuando el usuario escribe un monto custom, anula la selección de botones customAmountInput.addEventListener('input', (e) => clearSelectedButtons(); const val = e.target.value.trim(); if (val !== '') const num = parseFloat(val); if (!isNaN(num) && num > 0) selectedAmount = num; statusDiv.innerHTML = `✏️ Monto personalizado: $$num MXN`; else selectedAmount = null; statusDiv.innerHTML = `⚠️ Ingresa un monto válido (mínimo $10)`; else selectedAmount = null; statusDiv.innerHTML = `💡 Selecciona un monto predefinido o escribe uno`; statusDiv.classList.remove('error-msg', 'success-msg'); ); async () =>
<div class="input-group"> <label>💰 Monto a recargar (MXN)</label> <div class="amount-buttons" id="amountButtons"> <button type="button" class="amount-btn" data-amount="20">$20</button> <button type="button" class="amount-btn" data-amount="50">$50</button> <button type="button" class="amount-btn" data-amount="100">$100</button> <button type="button" class="amount-btn" data-amount="200">$200</button> <button type="button" class="amount-btn" data-amount="500">$500</button> </div> <div class="custom-amount"> <input type="number" id="customAmount" placeholder="Otra cantidad (MXN)" min="10" step="10"> </div> </div>
// Validar número Telcel (10 dígitos, empieza con 1, 2, 3, 4, 5, 6, 7, 8, 9? real: puede ser 55,56, etc) function isValidTelcelNumber(number) const clean = number.replace(/\D/g, ''); return clean.length === 10 && /^[0-9]10$/.test(clean);