Files
canine/app/javascript/controllers/partial_select_controller.js
2024-10-01 17:11:26 -07:00

21 lines
515 B
JavaScript

import { Controller } from "@hotwired/stimulus"
export default class extends Controller {
static targets = ["select", "toggleable"]
static values = {
selectAttribute: String
}
connect() {
this.toggle()
}
toggle() {
const selectedValue = this.selectTarget.value
this.toggleableTargets.forEach(element => {
const shouldShow = element.getAttribute(this.selectTarget.dataset.selectAttributeValue) === selectedValue
element.classList.toggle('hidden', !shouldShow)
})
}
}