【发布时间】:2019-06-21 08:40:43
【问题描述】:
我在我的插件目录中创建了一个组件,在 default.htm 中我将我的表单 html 并包含在我的部分中。但是当我提交表单时,我得到“AjaxHandler 组件:onSend 未找到”
default.htm
<div class="filter-holder">
<div class="container">
<div class="row">
<form name="contact-form" data-request="{{ __SELF__ }}::onSend" data-request-success="alert('Message Sent')">
<div class="col-md-5">
<input type="text" name="agent" class="form-control">
</div>
<div class="col-md-2">
<select class="form-control" id="services" name="services[]">
{% for client in records %}
<option value="{{ client.service }}">{{ client.service }}</option>
{% endfor %}
</select>
</div>
<div class="col-md-2">
<select class="form-control" id="search" name="area[]">
{% for client in records %}
<option value="{{ client.area }}">{{ client.area }} Miles</option>
{% endfor %}
</select>
</div>
<div class="col-md-3">
<input type="submit" value="Agents" class="red-btn btn btn-default">
<a class="location-view" href="#">location</a></div>
</form>
ComponentClass.php
class MarkerData extends ComponentBase {
public function componentDetails() {
return [
'name' => 'Marker Data',
'description' => 'List of marker data'
];
}
public function onSend()
{
$data = post();
print_r($data);die;
}}
并且在我的部分文件中,我包含了组件
{% 组件 "MarkerData" %}
Partial Code:
description = "A quick way to reference testimonials in the theme."
[viewBag]
snippetCode = "location-form"
snippetName = "Locations"
snippetProperties[category][title] = "Select Category"
snippetProperties[category][type] = "dropdown"
snippetProperties[category][default] = "customer"
snippetProperties[category][options][customer] = "Customer"
snippetProperties[category][options][agent] = "Agent"
[builderList]
modelClass = "Tech\Locations\Models\Location"
scope = "-"
scopeValue = "{{ :scope }}"
displayColumn = "name"
noRecordsMessage = "No records found"
detailsPage = "-"
detailsUrlParameter = "id"
pageNumber = "{{ :page }}"
[MarkerData]
==
{% set records = builderList.records %}
{% set displayColumn = builderList.displayColumn %}
{% set noRecordsMessage = builderList.noRecordsMessage %}
{% set detailsPage = builderList.detailsPage %}
{% set detailsKeyColumn = builderList.detailsKeyColumn %}
{% set detailsUrlParameter = builderList.detailsUrlParameter %}
{% component "MarkerData" %}
我希望我的表单能够访问组件中定义的方法。在OctoberCMS中是否有任何其他方式通过ajax提交表单
【问题讨论】:
-
你的表单代码不完整,你可以把整个部分代码。
-
@HardikSatasiya 已添加。
-
你的
default.htm代码被破坏了,我猜是从上面说的 :) -
是的,我也编辑它。它只有html。 :)
-
嗯,你确定你在部分中包含
{% component "MarkerData" %},因为我看到你包含{% component "LocationData" %},但不是markerdata
标签: ajax laravel octobercms october-form-controller