首页 > 解决方案 > 在脚本函数中运行公共函数,而不是在加载 laravel fullcalendar

问题描述

每当在 laravel 中执行 js 函数时,我都会尝试运行公共函数

这是我的代码:

select: function(info) {
  var title = prompt('Event Title:');

  calendar.addEvent({
          title: title,
          start: info.startStr,
          end: info.endStr,
          allDay: false
        });

            var start = info.startStr;
            var end = info.endStr;

            $title = title;
            $start = start;
            $end = end;
            $verified = 0;


            <?php echo \App\Http\Controllers\FullCalendarController::create();?>



        calendar.unselect();

},

每当用户尝试将事件添加到日历时,该功能就会运行

我想<?php echo \App\Http\Controllers\FullCalendarController::create();?>在调用函数时特别运行,但它总是在加载时运行。

这就是“创建”函数的作用:

public static function create()
{  
    DB::table('events')->insertGetId(
        ['title' => $title, 'start' => $start, 'end' => $end, 'verified']
    );
}

它不起作用,因为函数使用的变量($title,$start,$end)在函数运行之前没有定义。

我已经尝试在它周围放置一个 laravel if 语句,但它根本不起作用,并且一个 js if 语句无论如何都会在加载时运行它。

标签: phplaravel-5fullcalendar

解决方案


让我向您解释一下php和js是如何工作的。首先编译并执行 php 文件(在服务器端),然后通过浏览器执行 js、html 等。这就是我们所说的前端和后端。

基本上,您想要实现的目标很容易通过创建将“事件”添加到数据库的端点来实现。要访问此端点,您将需要使用例如:XMLHttpRequest javascript 对象。您可以将诸如 start 等参数作为请求参数发送


推荐阅读