2015-06-04 64 views
1

我做了一个网页,其中在HTML,PHP和jQuery。 我的PHP脚本将加载所有数据,其中日期与使用JQuery datepicker的文本输入中选择的日期相等。ASK - jQuery的日期选择器 - 保持选定的日期在文本输入

我的问题是,当我在选择一个日期选择器日期,然后该网页将加载数据,在日期选择文本输入是空白(无文本或日期)。

那么如何在文本输入中保留选定的日期?

<link rel="stylesheet" href="/resources/demos/style.css"> 

$(function() { 
    $("#datepicker").datepicker({dateFormat: 'yy-mm-dd'}); 
}); 

$(document).ready(function() { 
    $('#datepicker').change(function() { 
     $('#calendar').submit(); 
    }); 
}); 

我需要一些建议,以解决这个问题。所以谢谢你的帮助。如果我的话题与另一个话题相似,我也想道歉。

感谢您的帮助。

这里是我的代码脚本

<center> 
<form id="calendar" action="<?php echo $_SERVER['PHP_SELF'];?>" method="GET"> 
<div id="datepicker_start"></div> 
<input type="hidden" id="datepicker" name="datepicker"> 
</form> 
</center> 



<?php 
$host = "localhost"; 
$dbname = "dbname"; 
$username = "root"; 
$password = ""; 
try { 
$conn = new PDO("mysql:host=$host;dbname=$dbname", $username, $password); 
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION); 
} catch (PDOException $pe) { 
die("Could not connect to the database $dbname :" . $pe->getMessage()); 
} 

if(isset($_GET["datepicker"])){ 
$datepicker = $_GET["datepicker"]; 
$datepicker2 = date('d-m-Y', strtotime($datepicker)); 
}else{ 
$datepicker = date('Y-m-d'); 
$datepicker2 = date('d-m-Y', strtotime($datepicker)); 
} 
$stmt = $conn->prepare("my query"); 
$stmt->bindParam(':date', $datepicker); 
$stmt->execute(); 

$result = $stmt->fetchall(); 

if (empty($result)) { 
    echo "<center><h3>.:: Schedule <i>". $datepicker2 ." ::.</i></h1></center>"; 
    echo "<center><h1>.::No Data::.</h1></center>"; 
}else{ 
    echo "<center><h3>.:: Schedule <i>". $datepicker2 ." ::.</i></h1></center>"; 
    echo 
    "<table> 
    <tr> 
    <th>Data 1</th> 
    <th>Data 2</th> 
    <th>Data 3</th> 
    <th>Data 4</th> 
    <th>Data 5</th> 
    <th>Data 6</th> 
    <th>Data 7</th> 
    <th>Data 8</th> 
    <th>Data 9</th> 

    </tr>" 
    ; 

    foreach($result as $row) 
    { 
    echo "<tr>"; 
    echo "<td>" . $row['data 1'] . "</td>"; 
    echo "<td>" . $row['data 2'] . "</td>"; 
    echo "<td>" . $row['data 3'] . "</td>"; 
    echo "<td>" . $row['data 4'] . "</td>"; 
    echo "<td>" . $row['data 5'] . "</td>"; 
    echo "<td>" . $row['data 6'] . "</td>"; 
    echo "<td>" . $row['data 7'] . "</td>"; 
    echo "<td>" . $row['data 8'] . "</td>"; 
    echo "<td>" . $row['data 9'] . "</td>"; 

} 

    echo "</tr>"; 
    echo "</table>"; 
} 
?> 
+0

你能在的jsfiddle添加此代码白衣适当的PHP连接。以便我可以检查在选择日期和发送响应时发送的数据是什么。 – Indra

+0

您需要将值存储在cookie/localStorage中或将其作为查询字符串追加,在页面加载时读取并将其设置为输入字段。 – lshettyl

+0

或者,如果您的窗体的方法是'POST',那么你可以这样做:'$ _ POST [“InputFieldName”]' – lshettyl

回答

1

表单提交重新加载页面。 因此,您应该在表单提交中发送来自服务器脚本的日期,并将其设置在输入字段中。 或者您可以使用Ajax

+0

感谢Yash给你的建议。我会尝试。 – user3725360

相关问题