没有表单的JQuery Datepicker到PHP变量

我遇到了这种情况,我觉得修复起来很简单,但我似乎找不到合适的关键字/方法。

我得到了什么

没有表单的JQuery Datepicker。 它附加到跨度,因为我希望我的日历成为我网站上的菜单项。 如果我hover/单击“日历”菜单项,则Datepicker会显示:

 

我想要/需要什么

我想将使用datepicker选择的日期传递给PHP,因此我可以将其用作网站上其他地方的变量。

我相信,从其他情况来看,应该可以使用Ajax。 但我找到的所有示例都包括输入字段和/或提交按钮。 我没有表单,因为我只想从菜单中显示日期选择器。

我能做到这一点的最佳方式是什么?

– 编辑 –

也许我应该多解释一下。 我有图像,保存在dd-mm-yy文件夹中。 我希望能够使用日期选择器选择日期,然后在库中显示该文件夹中的图像。 这是图库的代码:

 <?php $date = INPUT FROM DATEPICKER HERE; $dirname = "images/$date/"; $images = glob($dirname."*.jpg"); echo '
    '; foreach($images as $image) { $titel = basename("$image", ".jpg").PHP_EOL; echo '
  • '.str_replace("_", " ", $titel).'

  • '; }; echo '
'; ?>

Javascript 更新

 $("#datepicker").datepicker({ onSelect: function() { var date = $('#datepicker').datepicker("getDate"); $.ajax({ url: "processdate.php", type: "POST", async: true, data: { selected_date: date }, success: function(resp) { if (resp === "true") { alert("it worked"); } else { alert("nope :-("); } } }); } }).datepicker("setDate", new Date());//Set current date. 

JAVASCRIPT NOTE

这会将日期设置为当前日期,仅用于显示目的,但它不会运行AJAX调用,因为如果这样做,您的用户将立即被重定向。 我个人建议在datepicker旁边添加一个按钮,该按钮会转到下一页,而不是在select上自动重定向。

processdate.php,在与具有js的页面相同的目录中创建此php文件

  

你的php,这是你在AJAX工作后应该重定向到的页面。

 
    '; foreach($images as $image) { $titel = basename("$image", ".jpg").PHP_EOL; echo '
  • '.basename(

    '.str_replace("_", " ", $titel).'

  • '; }; echo '
'; ?>

一旦你有这个工作替换alert("it worked"); 如果它成功了你想要发生什么,我假设重定向到你的图像页面。

你可以做一个post,它是post方法的简写ajax。

 $.post('path/to/php', {variable_name: $('#datepicker')}, function(return_data, result, xhr){ if(result == 'success') console.log(return_data); //or do whatever you want, or keep it empty }); 

然后你可以在你的PHP中再次收到这个变量,就像你正常的post一样:

 $_POST['variable_name']