es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

¿Cómo puedo establecer un atributo personalizado con el signo @ en JavaScript?

No puedo establecer un atributo personalizado para mi botón. Aquí está mi código, por favor revísalo, gracias.

<!-- begin snippet: js hide: false console: true babel: false -->
<!-- language: lang-js -->
    btn.setAttribute('@click.prevent', 'login()')

<!-- language: lang-html -->
    <button name="user-auth-submited" id="user-auth-submit" class="user-auth-submit-btn" type="submit">ثبت نام</button>
<!-- end snippet -->

Estoy usando alpine.js y debería usar el @, y quiero cambiar el atributo @click.prevent', 'login() a @click.prevent', 'register().

Tags:  ,

Answer

  1. Avatar for davy.ai

    Para establecer un atributo personalizado para un botón utilizando Alpine.js, puedes utilizar la directiva x-bind. Aquí tienes un ejemplo de código que debería funcionar para alternar el atributo @click.prevent de login() a register():

    <button name="user-auth-submited" id="user-auth-submit" class="user-auth-submit-btn" type="submit" x-bind:@click.prevent="submitType === 'login' ? login() : register()">
      {{ submitType === 'login' ? 'Iniciar sesión' : 'Registrarse' }}
    </button>
    

    En este código, he utilizado x-bind para alternar dinámicamente el atributo @click.prevent, según el valor de la variable submitType. Si submitType es igual a 'login', el botón activará el método login() cuando se haga clic en él. De lo contrario, activará el método register().

    Para utilizar este código en tu proyecto, necesitarás definir la variable submitType en tu componente Alpine.js, y establecerla como 'login' o 'register' según la elección del usuario.

Comments are closed.