CBWIRE
v4.x
v4.x
  • Introduction
  • How It Works
  • Getting Started
  • Configuration
  • Releases
    • What's New With 4.1
    • What's New With 4.0
    • What's New With 3.2
    • What's New With 3.1
    • What's New With 3.0
    • What's New With 2.2
    • What's New With 2.1
    • What's New With 2.0
  • Resources
  • Upgrading from CBWIRE 3.x
  • Upgrading from CBWIRE 2.x
  • CBWIRE CLI
  • The Essentials
    • Components
    • Templates
    • Data Properties
    • Computed Properties
    • Data Binding
    • Actions
    • Events
    • Nesting Components
    • Lifecycle Methods
    • JavaScript
    • Testing
  • Features
    • Single-file Components
    • Alpine.js
    • Lazy Loading
    • Form Validation
    • File Uploads
    • Query String
    • Redirecting
    • WireBox
  • Template Directives
    • wire:click
    • wire:confirm
    • wire:dirty
    • wire:ignore
    • wire:init
    • wire:key
    • wire:loading
    • wire:model
    • wire:navigate
    • wire:offline
    • wire:poll
    • wire:stream
    • wire:submit
    • wire:transition
  • Advanced
    • Troubleshooting
Powered by GitBook
On this page
  • Overview
  • Using on links

Was this helpful?

Export as PDF
  1. Template Directives

wire:click

PreviousWireBoxNextwire:confirm

Last updated 7 months ago

Was this helpful?

Overview

You can listen for click events within your using wire:click and provide an to run when clicked.

// ./wires/MyForm.cfc
component extends="cbwire.models.Component" {
    data = {
        "sent": false
    };
    function sendEmails(){
        sleep( 2000 ); // pretend this takes a while
        data.sent = true;
    }
}
<!--- ./wires/myform.cfm --->
<div>
    <button type="button" wire:click="sendEmail">Send Important Emails</button>
    <cfif sent>
        <div>Check your spam folder. We spammed you.</div>
    </cfif>
</div>

Add wire:click on any HTML elements, not just buttons and links.

Using on links

When adding wire:click to links, you need to include the .prevent modifier to stop the default handling of a link in the browser. Otherwise, the browser will load the link and update the page's URL.

<a href="#" wire:click.prevent="sendEmail">Click</a>
templates
action