在livewire 1.3应用中,查看https://laravel-livewire.com/docs/alpine-js上的DatePicker示例 选择日期后,我看不到如何设置自定义参数以及如何使用它? 我需要将隐藏的输入格式化日期保存在db中。 我在属性中添加了1个参数:
<x-date-picker
wire:model="start_date"
id="start_date"
autocomplete="off"
attributes="{hidden_element:'hidden_start_date'}"
/>
以及在resources / views / components / date-picker.blade.php中: 并尝试读入日期选择事件:
<div>
<input
x-data
x-ref="input"
x-init="new Pikaday({
field: $refs.input,
format:'M/D/YYYY',
onSelect: function() {
console.log(this.el); // that shows html code of datepicker
console.log('getAttribute:');
console.log(this.el.getAttribute('hidden_element')); // shown null
$( this.el.getAttribute('hidden_element') ).val( dateToMySqlFormat(this._d) );
// code above does not work !
}
})"
type="text"
{{ $attributes }}
>
</div>
哪种方法有效?
谢谢!
答案 0 :(得分:0)
我通过以下决定做出决定:
<x-date-picker
wire:model="start_date"
id="start_date"
autocomplete="off"
hidden_element="hidden_start_date"
/>
以及在我的组件中:
<div>
<input
x-data
x-ref="input"
x-init="new Pikaday({
field: $refs.input,
format:'M/D/YYYY',
onSelect: function() {
{{-- console.log(this);--}}
$('#'+$el.getAttribute('hidden_element')).val( dateToMySqlFormat(this._d) );
}
})"
type="text"
{{ $attributes }}
>
</div>
!