x
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
<form action="/" accept-charset="UTF-8" method="post"><input type="hidden" name="authenticity_token" value="LJJ6ScSErdKH5ZxnU1kG2EUiJ6u-6BWHNytuSjAmnHkSqFCYllof4hBY5ddF8YQPKRxQIQGv4M3DUhFTqND22w" autocomplete="off" />
<div class="space-y-4" x-data x-init="Alpine.store('favorite_fruits', ["banana"]);">
<input value="" autocomplete="off" type="hidden" name="form_component_preview_test_model[favorite_fruits]" id="form_component_preview_test_model_favorite_fruits" />
<input type="hidden" name="form_component_preview_test_model[favorite_fruits][]" value="" autocomplete="off" />
<div class="checkbox_item"><input x-model="$store.favorite_fruits" type="checkbox" value="orange" name="form_component_preview_test_model[favorite_fruits][]" id="form_component_preview_test_model_favorite_fruits_orange" /><label for="form_component_preview_test_model_favorite_fruits_orange">Orange</label></div>
<div class="checkbox_item"><input x-model="$store.favorite_fruits" type="checkbox" value="banana" checked="checked" name="form_component_preview_test_model[favorite_fruits][]" id="form_component_preview_test_model_favorite_fruits_banana" /><label for="form_component_preview_test_model_favorite_fruits_banana">Banana</label></div>
<div class="checkbox_item"><input x-model="$store.favorite_fruits" type="checkbox" value="apple" name="form_component_preview_test_model[favorite_fruits][]" id="form_component_preview_test_model_favorite_fruits_apple" /><label for="form_component_preview_test_model_favorite_fruits_apple">Apple</label></div>
</div>
<div x-data="{condition: false}"
x-effect="condition = $store.favorite_fruits === 'banana' ||
(Array.isArray($store.favorite_fruits) && $store.favorite_fruits.includes('banana'))">
<p class="sr-only" aria-live="polite" role="status"
x-text="'Followup banana question is now ' + (condition ? 'visible' : 'hidden')">
</p>
<div x-cloak x-show="condition" class="space-y-4">
<h2>Header</h2>
<p>Body</p>
</div>
</div>
</form>
1
2
custom_model = TestModel.new(favorite_fruits: [ "banana" ])
render("non_component_previews/prefilled_checkboxes_conditional", model: custom_model)