Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Date 完整日历:回发后返回到选定日期_Date_Postback_Fullcalendar - Fatal编程技术网

Date 完整日历:回发后返回到选定日期

Date 完整日历:回发后返回到选定日期,date,postback,fullcalendar,Date,Postback,Fullcalendar,这个问题是关于jquery插件fullcalendar的。 回发后如何返回到所选日期 例如,我将周日程作为默认视图。假设我选择下周(自定义周)并在其中创建事件。 回发后,我返回默认周,但我希望获得自定义周 如何解决这个问题?。。请帮忙! 谢谢您必须保存用户选择的周数。在PHP中,您可以使用$\u SESSION保存所选的一周,当从事件创建过程返回时,脚本将获取该变量并显示该周 session_start(); if (isset($_SESSION["week_number"])) $w

这个问题是关于jquery插件fullcalendar的。 回发后如何返回到所选日期

例如,我将周日程作为默认视图。假设我选择下周(自定义周)并在其中创建事件。 回发后,我返回默认周,但我希望获得自定义周

如何解决这个问题?。。请帮忙!
谢谢

您必须保存用户选择的周数。在PHP中,您可以使用
$\u SESSION
保存所选的一周,当从事件创建过程返回时,脚本将获取该变量并显示该周

session_start();
if (isset($_SESSION["week_number"]))
    $week_number = $_SESSION["week_number"];
else 
    $week_number = $this_week;

echo '<script>var week_number = '.$week_number.'; </script>';

// insert script to show the calendar here, use the variable week_number in your
// Javascript
session_start();
如果(isset($_会话[“周数]))
$week\u number=$\u会话[“week\u number”];
其他的
$week\u number=$this\u week;
回显'var week_number='。$week_number.';
//在此处插入脚本以显示日历,请在
//Javascript
当用户单击“下周”按钮时,您必须告诉PHP使用AJAX调用如下文件:

<?php
    session_start();
    $_SESSION["week_number"] = $_GET["new_week_number"];
?>


使用get参数将新的周号发送到文件,即
set_week_number.php?new_week_number=123

您必须保存用户选择的周号。在PHP中,您可以使用
$\u SESSION
保存所选的一周,当从事件创建过程返回时,脚本将获取该变量并显示该周

session_start();
if (isset($_SESSION["week_number"]))
    $week_number = $_SESSION["week_number"];
else 
    $week_number = $this_week;

echo '<script>var week_number = '.$week_number.'; </script>';

// insert script to show the calendar here, use the variable week_number in your
// Javascript
session_start();
如果(isset($_会话[“周数]))
$week\u number=$\u会话[“week\u number”];
其他的
$week\u number=$this\u week;
回显'var week_number='。$week_number.';
//在此处插入脚本以显示日历,请在
//Javascript
当用户单击“下周”按钮时,您必须告诉PHP使用AJAX调用如下文件:

<?php
    session_start();
    $_SESSION["week_number"] = $_GET["new_week_number"];
?>


使用get参数将新的周号发送到文件中,即
set_week_number.php?new_week_number=123

您可以按照上述方式执行会话状态(这里是针对ASP特定会话状态的示例)。在链接页面的“代码示例”下,有一些示例说明如何将值保存到会话状态以及如何从会话状态读取值。是的,您可以从会话端到客户端获取值:)

您可以按照上面所述执行会话状态(这里是ASP特定会话状态的示例)。在链接页面的“代码示例”下,有一些示例说明如何将值保存到会话状态以及如何从会话状态读取值。是的,您可以从会话端到客户端获取值:)

我尝试执行以下操作。 服务器端:

[HttpPost] public ActionResult Create(FormCollection collection){   
   ...  
   Session["curdate"] = asi.appointmentDate.ToString();  
} 
public ActionResult CurrentDate(){  
   return (Session["curdate"] == null) ? null : Content(Session["curdate"].ToString()); 
}
客户端:

var sd = $.ajax(
                    {
                        url: '<%= ResolveUrl("~/Schedule/CurrentDate") %>',
                        async: false,
                        success: function(data, result) {
                            if (!result)
                                alert('Failure to retrieve the date.');
                        }
                    }
                ).responseText;
        var selectedDate = (sd == "") ? new Date() : new Date(sd);
        $('#calendar').fullCalendar('gotoDate', selectedDate);
var sd=$.ajax(
{
url:“”,
async:false,
成功:功能(数据、结果){
如果(!结果)
警报(“检索日期失败”);
}
}
).responseText;
变量selectedDate=(sd==“”)?新日期():新日期(sd);
$(“#日历”).fullCalendar('gotoDate',selectedDate);
我尝试执行以下操作。 服务器端:

[HttpPost] public ActionResult Create(FormCollection collection){   
   ...  
   Session["curdate"] = asi.appointmentDate.ToString();  
} 
public ActionResult CurrentDate(){  
   return (Session["curdate"] == null) ? null : Content(Session["curdate"].ToString()); 
}
客户端:

var sd = $.ajax(
                    {
                        url: '<%= ResolveUrl("~/Schedule/CurrentDate") %>',
                        async: false,
                        success: function(data, result) {
                            if (!result)
                                alert('Failure to retrieve the date.');
                        }
                    }
                ).responseText;
        var selectedDate = (sd == "") ? new Date() : new Date(sd);
        $('#calendar').fullCalendar('gotoDate', selectedDate);
var sd=$.ajax(
{
url:“”,
async:false,
成功:功能(数据、结果){
如果(!结果)
警报(“检索日期失败”);
}
}
).responseText;
变量selectedDate=(sd==“”)?新日期():新日期(sd);
$(“#日历”).fullCalendar('gotoDate',selectedDate);

javascript可以从属性获取值,因此在回发之前将该值置于会话状态。回发时,将值从会话状态拉入属性。然后从客户端获取属性的值

服务器端:

public string bar { get; set; }

protected void Page_Load(object sender, EventArgs e)
{
    if (IsPostBack)
        bar = Session["barvalue"].ToString();        
}
客户端:

        $(document).ready(function() {
            var foo = '<%= bar %>';
            alert(foo);
        });
$(文档).ready(函数(){
var foo='';
警报(foo);
});

javascript可以从属性获取值,因此在回发之前将该值置于会话状态。回发时,将值从会话状态拉入属性。然后从客户端获取属性的值

服务器端:

public string bar { get; set; }

protected void Page_Load(object sender, EventArgs e)
{
    if (IsPostBack)
        bar = Session["barvalue"].ToString();        
}
客户端:

        $(document).ready(function() {
            var foo = '<%= bar %>';
            alert(foo);
        });
$(文档).ready(函数(){
var foo='';
警报(foo);
});

我自己一直在想这个问题。这就是我想到的

它是2折的:

  • 它保存了视图和视图
  • 它会在页面加载后恢复所选日期 我遇到的问题是,在加载/初始化FullCalendar时设置了当前日期的cookie,然后读取cookie。我解决了这个问题,只读取页面加载时的cookie并将其删除。日期的cookies将在导航中设置

    $(document).ready(function() {
        calendar = $('#calendar').fullCalendar( {
            defaultView:$.cookie('fullcalendar_defaultView') || {if $_USER.status==1}'month'{else}'agendaWeek'{/if},
            viewDisplay: function(view) {
                $.cookie('fullcalendar_defaultView', view.name);
                if ( calendar ) MySetDate();
            }
        }
    
    function MySetDate()
        {
            var thedate = $('#calendar').fullCalendar('getDate');
    
            raw_date = thedate + 'stringed';
            raw_split_date = raw_date.split(' ');
    
            switch (raw_split_date[1]) 
            {
                case 'Jan': raw_month = 0; break;
                case 'Feb': raw_month = 1; break;
                case 'Mrt': raw_month = 2; break;
                case 'Apr': raw_month = 3; break;
                case 'May': raw_month = 4; break;
                case 'Jun': raw_month = 5; break;
                case 'Jul': raw_month = 6; break;
                case 'Aug': raw_month = 7; break;
                case 'Sep': raw_month = 8; break;
                case 'Oct': raw_month = 9; break;
                case 'Nov': raw_month =10; break;
                case 'Dec': raw_month =11; break;
            }
    
            $.cookie('lof_y', raw_split_date[3], { expires: 2 } );
            $.cookie('lof_m', raw_month,         { expires: 2 } );
            $.cookie('lof_d', raw_split_date[2], { expires: 2 } );
        }
    
    function setMyView() {
        $('#calendar').fullCalendar('gotoDate', $.cookie('lof_y'), $.cookie('lof_m'), $.cookie('lof_d') );
        $.cookie('lof_y', null);
        }
    
        if ( $.cookie('lof_y') ) setMyView();
    } );
    

    这是我自己想出来的。这就是我想到的

    它是2折的:

  • 它保存了视图和视图
  • 它会在页面加载后恢复所选日期 我遇到的问题是,在加载/初始化FullCalendar时设置了当前日期的cookie,然后读取cookie。我解决了这个问题,只读取页面加载时的cookie并将其删除。日期的cookies将在导航中设置

    $(document).ready(function() {
        calendar = $('#calendar').fullCalendar( {
            defaultView:$.cookie('fullcalendar_defaultView') || {if $_USER.status==1}'month'{else}'agendaWeek'{/if},
            viewDisplay: function(view) {
                $.cookie('fullcalendar_defaultView', view.name);
                if ( calendar ) MySetDate();
            }
        }
    
    function MySetDate()
        {
            var thedate = $('#calendar').fullCalendar('getDate');
    
            raw_date = thedate + 'stringed';
            raw_split_date = raw_date.split(' ');
    
            switch (raw_split_date[1]) 
            {
                case 'Jan': raw_month = 0; break;
                case 'Feb': raw_month = 1; break;
                case 'Mrt': raw_month = 2; break;
                case 'Apr': raw_month = 3; break;
                case 'May': raw_month = 4; break;
                case 'Jun': raw_month = 5; break;
                case 'Jul': raw_month = 6; break;
                case 'Aug': raw_month = 7; break;
                case 'Sep': raw_month = 8; break;
                case 'Oct': raw_month = 9; break;
                case 'Nov': raw_month =10; break;
                case 'Dec': raw_month =11; break;
            }
    
            $.cookie('lof_y', raw_split_date[3], { expires: 2 } );
            $.cookie('lof_m', raw_month,         { expires: 2 } );
            $.cookie('lof_d', raw_split_date[2], { expires: 2 } );
        }
    
    function setMyView() {
        $('#calendar').fullCalendar('gotoDate', $.cookie('lof_y'), $.cookie('lof_m'), $.cookie('lof_d') );
        $.cookie('lof_y', null);
        }
    
        if ( $.cookie('lof_y') ) setMyView();
    } );
    

    非常感谢您的回复!我理解你的想法。我使用ASP(带MVC模式)。所以我不确定在这种情况下是否可以在服务器端生成javascript。也许可以通过$.ajax({async:false,…})获取会话参数,但这不是一个很好的解决方案。对不起,我对ASP。。。我帮不了你。非常感谢你的回复!我理解你的想法。我使用ASP(带MVC模式)。所以我不确定在这种情况下是否可以在服务器端生成javascript。也许有可能得到一个会话para