由于不确定如何,这必须非常直接。
我正在构建一个包含类别和子类别的前端表单。下面的代码显示选择框中的类别,没有任何问题
Php块
$this['items'] = Cat::where('parent_id',0)->pluck('cat_title', 'id');
显示
<div class="form-group">
<b><label class="float-left" id="cats"
for="inputCategory">Category</label></b>
<select id="category" class="form-control" data-request="onChangeCat"
data-request-update="select: '#subcategory'">
<option selected>Choose...</option>
{% for key, item in items %}
<option value={{ key }}> {{ item }}</option>
{% endfor %}
</select>
</div>
我有一个数据请求,使用以下Ajax处理程序在下一个选择框中显示子类别。要渲染的部分也是适当的。
function onChangeCat()
{
$this['subs'] = Cat::where('parent_id', '>',0)->pluck('cat_title', 'id');
}
问题是如何编写Ajax处理程序代码以仅按类别的id显示子类别。上面的代码只显示所有子类别。
select
一个名字标签<select name="category">..</select>
post()
函数访问的发布数据查询子类别:例如Cat::where('parent_id', '=', post('category') )->pluck('cat_title', 'id')
您需要在类别选择中使用作为参数selected
项目的路线,然后该路线将通过子类别过滤以仅具有相关的子类别,您将使用json_encode()
获取数据并将结果作为json发回创建选项,然后将它们添加到子类别选择。
该路线将被称为用户更改选择类别的路线。