我正在处理我的完整日历。我需要做那样的事情: 用户加入活动并且此活动会更改灰色的颜色,并且事件无法编辑。 我建立了关系,工作很好。但我不知道如何在JS中使用检查关系表中是否存在事件。我在控制器中为一个数据透视表做了一些变量,并尝试在js中将event.id与数据透视表中的事件id等同,但它不起作用。我在Js中真的很迟钝,我现在正在学习PHP,我不知道我该怎么做。 有我的代码:
查看:
<script src="{{ asset('js/fullcalendar') }}/fullcalendar.js"></script>
<script src="{{ asset('js/bootstrap.js') }}"></script>
<script type="text/javascript">
$(document).ready(function() {
var base_url = '{{ url('/') }}';
$('#bootstrapModalFullCalendar').fullCalendar({
weekends: true,
header: {
left: 'prev,next today',
center: 'title',
right: 'month,agendaWeek'
},
eventClick: function(event, jsEvent, view) {
$('#modalTitle').html(event.title);
$('#modalBody').html(event.name);
$('#eventUrl').attr('href','/home/zapis/'+event.id);
$("#startTime").html(moment(event.start).format('HH:mm '));
if (event.end) $("#endTime").html(moment(event.end).format('HH:mm '));
else $("#endTime").html('');
$('#fullCalModal').modal();
return false;
},
eventLimit: true,
FirstDay: 1,
contentheight : 650,
editable : true,
allDay : false,
aspectRatio : 2,
slotLabelFormat : 'HH:mm:ss',
timeFormat : 'HH:mm',
displayEventEnd : true,
events: {
url: base_url + '/api',
error: function() {
alert("cannot load json");
}
},
//eventColor: 'white',
eventAfterRender: function (event, element, view,events_id) {
if(event.id === events_id){
element.css('backgroundcolor','#cccccc');
}
else
{
if (event.title == "Wydzial 1")
{
element.css('background-color', '#378006');
}
else if(event.title == "Wydzial 2"){
element.css('background-color', '#ff0000');
}
else if(event.title == "Wydzial 3"){
element.css('background-color', '#73e600');
}
else{
element.css('background-color', '#0066ff');
}
}
}
});
});
</script>
Controller HomeController&lt;&lt;它的日历控制器
public function index()
{
$events_id = User::with('eventsave')->get();
return view('home',['events_id'=>$events_id]);
}
和HomeModel&lt;&lt;日历
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class HomeModel extends Model
{
protected $table = 'events'; // you may change this to your name table
public $timestamps = true; // set true if you are using created_at and updated_at
protected $primaryKey = 'id'; // the default is id
public function usersave()
{
return $this->belongsToMany(User::class,'save_events','events_id','users_id');
}
}