laravel - Laravel Livewire 选择搜索下拉菜单不起作用
问题描述
我在 Laravel Livewire 项目中有一个表单,并尝试从数据库中搜索和选择用户。当我搜索用户时,搜索结果中的用户,但没有选择。此外,仅显示页面刷新没有错误。我的代码如下: 我正在尝试这个
livewire 组件视图
<div class="col-md-4">
<div class="form-group row">
<label class="control-label col-md-2 col-sm-2">Select User</label>
<div class="col-md-10 col-sm-10 ">
<div>
<select wire:model="user_id" class="form-control" name="user_id" required>
<option></option>
@foreach($users as $user)
<option value="{{$user->id}}">{{$user->username}} : {{ $user->fullname }}</option>
@endforeach
</select>
</div>
<div style="position:relative">
<input wire:model.debounce.500ms="inputsearchuser" class="form-control relative" type="text"
placeholder="search..."/>
</div>
<div style="position:absolute; z-index:100">
@if(strlen($inputsearchuser)>2)
@if(count($searchusers)>0)
<ul class="list-group">
@foreach($searchusers as $searchuser)
<li class="list-group-item list-group-item-action">
<spanwire:click
="selectuser({{$searchuser->id}},{{$searchuser->terms}})">{{$searchuser->username}}
: {{$searchuser->fullname}}</span>
</li>
</ul>
@endforeach
@else
<li class="list-group-item">User Not Found...</li>
@endif
@endif
</div>
</div>
</div>
</div>
火线组件
class MyLiveWireComponent extends Component
{
public $j = 1;
public $users = [];
public $inputsearchuser = '';
public $user_id;
public function selectuser($user_id,$terms)
{
$this->user_id = $user_id;
$this->terms = $terms;
$this->inputsearchuser = '';
}
public function render()
{
$searchusers = [];
if (strlen($this->inputsearchuser) >= 2) {
$searchusers = User::Where('username', 'LIKE', '%' . $this->inputsearchuser . '%')
->get();
}
return view('livewire.admin.orders.add-order', ['searchusers' => $searchusers])->layout('components.layouts.admin');
}
}
解决方案
改变这个:
<spanwire:click="selectuser({{$searchuser->id}},{{$searchuser->terms}})">
{{$searchuser->username}} : {{$searchuser->fullname}}
</span>
至:
<span wire:click.prevent="selectuser({{$searchuser->id}},{{$searchuser->terms}})">
{{$searchuser->username}} : {{$searchuser->fullname}}
</span>
推荐阅读
- java - Java 程序无法编写完整的网页内容,但是在 SOAPUI 中,我可以看到完整的内容
- python - 使旧键成为具有列表理解的新字典的值
- python - 从 blob 存储读取 csv 文件,并通过触发 azure 函数应用程序将数据附加到该 csv 文件中
- rust - 为什么 Debug 格式化程序会公开私有结构字段?
- node.js - Axios-Node JS cookie 解析器返回一个空对象
- python - 如何使用 pyglet 停止 MP3 播放
- mysql - 如何将所有行数据合并到一行中
- javascript - PWA:为什么在 pointerdown 事件时手机导航按钮不断弹出?
- javascript - NodeJs Azure Functions + Azure 服务总线重试
- python - 无法使用 BeautifulSoup 替换 HTML 文本