首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >下拉选择字段保持为空Livewire

下拉选择字段保持为空Livewire
EN

Stack Overflow用户
提问于 2021-05-02 23:24:18
回答 1查看 210关注 0票数 0

我是第一次尝试Livewire。该下拉列表是从数据库填充的。类似的代码适用于文本字段,但不适用于下拉选择字段。

编辑:表单位于bootstrap模式代码中,如下所示: livewire组件(leads-form.blade)

代码语言:javascript
运行
复制
 <div class="modal-content">
<form wire:submit.prevent="submit">
            @csrf
            <div class="input-field col s12">
                <label for="role">Client</label>
                <select  class="error validate" wire:ignore id="client_id" wire:model="client_id">
                    <option disabled value="&nbsp;">Client</option>
                    @foreach($clients as $client)
                        <option value="{{$client->id}}"> {{$client->clientname}}</option>
                    @endforeach
                </select>
            </div>
            <div class="input-field col m12 s12">
                <input id="contactperson" type="text" name="contactperson" wire:model="contactperson" />
                @error('contactperson') <span class="error"><small>{{ $message }}</small></span> @enderror
                <label for="contactperson">Contact Person</label>
            </div>

            <div class="row">
                <div class="row">
                    <div class="input-field col s12">
                        <button class="btn cyan waves-effect waves-light right" type="submit">Add
                            <i class="material-icons right">send</i>
                        </button>
                    </div>
                </div>
            </div>
        </form>
</div>

下一个Livewire leads类如下:

代码语言:javascript
运行
复制
class LeadsForm extends Component
{

public $contactperson;
public $client_id;





public function submit()
{


    Lead::create([
        'client_id' => $this->client_id,
        'contactperson' => $this->contactperson,
       
    ]);

    Alert::toast('Client created successfully', 'success');
    return $this->redirectRoute('leads.index');
}




public function render()
{
    $clients = Client::all();
  

    return view('livewire.leads-form',[
        'clients'=>$clients,
   

    ]);
}

}

我使用的是laravel调试栏,它将数组client_id字段显示为空。

EN

回答 1

Stack Overflow用户

发布于 2021-05-02 23:57:40

删除select元素中的wire:ignore,这样可以避免产生任何可以包装到后端的Livewire事件

代码语言:javascript
运行
复制
<select  class="error validate" wire:ignore id="client_id" wire:model="client_id">
 <option disabled value="&nbsp;">Client</option>
 @foreach($clients as $client)
   <option value="{{$client->id}}"> {{$client->clientname}}</option>
 @endforeach
</select>
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67358057

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档