我的目标是在指定和提交日期范围时更新部分以显示课程日期。
我有一个能按预期工作的函数。
这是函数
function onFetchDataFromServer()
{
$course = Course::findOrFail( $this->param('id') );
$start = Input::get('start_date');
$end = Input::get('end_date');
$dates = $course->coursemetas->whereBetween('date', array($start, $end));
return $dates;
}这是标记
<form class="row gx-3 align-items-center" data-request="onFetchDataFromServer" data-request-success="console.log(data)"">
<div class="col-12 col-lg pxp-has-left-border">
<div class="input-group mb-3 mb-lg-0">
<span class="input-group-text"><span class="fa fa-calendar-o"></span></span>
<input type="date" class="form-control" id="startPicker" name="start_date" placeholder="Choose a start date">
</div>
</div>
<div class="col-12 col-lg pxp-has-left-border">
<div class="input-group mb-3 mb-lg-0">
<span class="input-group-text"><span class="fa fa-calendar-o"></span></span>
<input type="date" class="form-control" id="endPicker" name="end_date" placeholder="Choose an end date">
</div>
</div>
<div class="col-12 col-lg-auto">
<button type="submit">Search dates</button>
</div>
</form>因此,与其将结果记录到控制台,我现在要更新一个分部。
我的观点中有一个叫做“课程/metas”的部分。
有人能帮帮我吗?
提前谢谢。
发布于 2021-12-17 17:02:44
你可以试试这样的东西。检查一下这里的文件。
这是一个页面的PHP部分:
function onFetchDataFromServer()
{
$course = Course::findOrFail( $this->param('id') );
$start = Input::get('start_date');
$end = Input::get('end_date');
$dates = $course->coursemetas->whereBetween('date', array($start, $end));
$this['dates'] = $dates;
return [
'#myDiv' => $this->renderPartial('coursemetas')
];
}这是用于组件插件的:
function onFetchDataFromServer()
{
$course = Course::findOrFail( $this->param('id') );
$start = Input::get('start_date');
$end = Input::get('end_date');
$dates = $course->coursemetas->whereBetween('date', array($start, $end));
$this->page['dates'] = $dates;
return [
'#myDiv' => $this->renderPartial('@coursemetas')
];
}注意与renderPartial一起发送的@符号,因为这告诉框架查看插件文件夹中的部分。也可以按组件和部分名称指定部分路径,如这个return $this->renderPartial('course::coursemetas');。
https://stackoverflow.com/questions/70394765
复制相似问题