JQuery Datepicker to PHP 变量没有形式
JQuery Datepicker to PHP variable without form
我遇到了一个情况,我觉得修复起来很简单,但我似乎找不到正确的关键字/方法来做到这一点。
我有什么
没有窗体的 JQuery 日期选取器。它附加到一个跨度,因为我希望我的日历成为我网站上的菜单项。如果我将鼠标悬停/单击"日历"菜单项,日期选择器将显示:
<ul class="menu vertical">
<li>
<span id="datepicker"></span>
</li>
</ul>
我想要/需要什么
我想将使用日期选择器选择的日期传递给 PHP,这样我就可以将其用作网站其他地方的变量。
我相信,从其他情况来看,阿贾克斯应该是可能的。但是我找到的所有示例都包括输入字段和/或提交按钮。我没有表单,因为我只想从菜单中显示日期选择器。
我能做到这一点的最好方法是什么?
--编辑--
也许我应该多解释一下。我有图像,保存在dd-mm-yy文件夹中。我希望能够使用日期选择器选择一个日期,然后在图库中显示该文件夹中的图像。这是库的代码:
<?php
$date = INPUT FROM DATEPICKER HERE;
$dirname = "images/$date/";
$images = glob($dirname."*.jpg");
echo '<div id="slider" class="flexslider"><ul class="slides">';
foreach($images as $image) {
$titel = basename("$image", ".jpg").PHP_EOL;
echo '<li><img src="'.$image.'" alt="'.basename("$image", ".jpg").PHP_EOL.'"><p class="flex-caption">'.str_replace("_", " ", $titel).'</p></li>';
};
echo '</ul></div>';
?>
Javascript UPDATE:
$("#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 调用,因为如果运行,您的用户将立即被重定向。 就个人而言,我建议在日期选择器旁边添加一个按钮,该按钮转到下一页,而不是在选择时自动重定向。
Processdate.php,在与具有 js 的页面相同的目录中创建此 PHP 文件
<?php
session_start();
if(isset($_POST["selected_date"])){
$_SESSION["date"] = $_POST["selected_date"];
echo "true";
} else {
echo "false";
}
?>
你的php,这是你在AJAX工作后应该重定向到的页面。
<?php
session_start();
$date = $_SESSION["date"];
$dirname = "images/$date/";
$images = glob($dirname."*.jpg");
echo '<div id="slider" class="flexslider"><ul class="slides">';
foreach($images as $image) {
$titel = basename("$image", ".jpg").PHP_EOL;
echo '<li><img src="'.$image.'" alt="'.basename("$image", ".jpg").PHP_EOL.'"><p class="flex-caption">'.str_replace("_", " ", $titel).'</p></li>';
};
echo '</ul></div>';
?>
一旦你有了这个工作,如果它成功了,alert("it worked");
用你想要发生的任何事情替换,我假设重定向到你的图像页面。
你可以做一个帖子,它是 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['variable_name']
相关文章:
- 将函数的上下文应用于javascript变量
- 无法导出函数expressjs/requestjs中的变量
- 函数参数中的数据与指定变量之间的任何性能差异
- 将PHP变量传递给jQuery时遇到问题
- 如何通过ajax刷新JSF填充的javascript变量
- 参数变量出现ngTable指令问题
- 通过javascript重定向html传递php变量
- 将jsp文件下拉列表中的选定项分配给一个java变量(比如String selection)
- 全局变量和全局对象的属性之间有什么区别吗
- 如何在Bootstrap Modal中为动态点击生成的变量设置jade属性
- 值对象在某个变量发生更改后发生更改
- Javascript变量赋值|
- AngularJS-在JSON选择器中使用变量名
- Javascript计数器变量未显示正确的值
- 如何组合Datepicker&一个变量中的时间选择器
- Angular UI Bootstrap Datepicker动态日期(变量)
- JQuery Datepicker to PHP 变量没有形式
- 使用$scope变量设置Datepicker最小/最大日期
- 从jquery datepicker获取包含日期的php变量
- 通过html表单将两个JQuery Datepicker变量传递给PHP变量