尝试在十月 CMS 下创建一个组件,该组件创建一个 ToDo 列表(看这个视频)。添加项目工作正常,但现在我正在尝试设置 Ajax 处理程序以在单击按钮时删除一个元素。
这是html代码:
<form>
<div class="panel panel-default">
<div class="panel-heading">
<h3 class="panel-title">Tasks assigned to: {{ __SELF__.name }}</h3>
</div>
<div class="panel-body">
<div class="input-group">
<input name="task" type="text" id="inputItem" class="form-control" value="" \>
<span class="input-group-btn">
<button type="submit" class="btn btn-primary"
data-request="{{ __SELF__ }}::onAddItem"
data-request-success="$('#inputItem').val('')"
data-request-update="'{{ __SELF__ }}::tasks': '#result'"
>Add</button>
</span>
</div>
<ul class="list-group" id="result">
{% partial __SELF__ ~ '::tasks' tasks=__SELF__.tasks removeId=__SELF__.removeId %}
</ul>
</div>
</div>
<form>
以及呈现任务列表的组件(命名任务)的代码:
{% if tasks|length > 0 %}
{% for i in 0..tasks|length-1 %}
<li class="list-group-item">
{{ tasks[i] }}
<button class="close pull-right"
data request="{{ __SELF__ }}::onRemoveItem"
data-request-success="console.log(data)"
>
×
</button>
</li>
{% endfor %}
{% endif %}
最后是处理程序的代码(不要做太多):
public function onRemoveItem()
{
return [
'Name' => 'Federico';
];
}
现在,我设置了处理程序onRemoveItem
,将其数据请求放在一个按钮中,如本页所述,单击该按钮应该启动处理程序的执行,但这不会发生,而在插入任务的“添加”按钮中一切正常在数据库中。
有人可以解释我做错了什么吗?(如果有人想查看该页面,链接是http://afterlife.ddns.net/
编辑:
解决了,我只好在布局文件中链接框架js