Мои новейшие квесты были непростыми, чтобы заставить меня услышать ... Я не нашел здесь темы, чтобы найти правильный путь в моей ситуации.
У меня есть один встроенный сборщик дат.У меня оно есть, поэтому выбранная дата будет показана в 3 DIV.Один на день ("DD, d"), другой на месяц ("MM"), а затем на год ("yy").
<script type="text/javascript">
$(document).ready(function () {
$( "#datepicker" ).datepicker({
onSelect: function(dateText, inst) {
//formatDate Requires a new date object to work
var myDate = new Date(dateText);
var myDate2 = new Date(dateText);
var myDate3 = new Date(dateText);
//Set a new var with different format to use
var newFormat = $.datepicker.formatDate("DD, d", myDate);
var newFormat2 = $.datepicker.formatDate("MM", myDate2);
var newFormat3 = $.datepicker.formatDate("yy", myDate3);
//Choose the div you want to replace
$("#apDiv1").html(newFormat);
$("#apDiv5").html(newFormat2);
$("#apDiv7").html(newFormat3);
}
});
});
</script>
Кажется, я не могу его получитьчтобы при изменении даты в DIV были вызваны 2 события для публикации в другом DIV. Позвольте мне сосредоточиться только на DIV дня ("DD, d") .. (# apDive1).
Когда дата выбрана на датчике, дата будет отображаться в (# apDiv1) в формате «DD, d».поэтому, когда происходит это «изменение», оно отправляет эту дату в «daypower.php», чтобы отобразить итоговое значение этого дня в (# apDiv2) .... И то же самое изменение также отправит «daygraph.php» для возвратаданные в (# apDive4).
Все, что я сделал, потерпело неудачу ... Я вернулся только к средству выбора даты ... Вы можете взглянуть на страницу, чтобы визуально увидеть, кто япытаясь сделать .
Я попытался сначала загрузить дату на страницу, и этот dateText обеспечит правильное событие, но НЕТ результата.Я не уверен в это время, поэтому я вернулся на круги своя с чистого листа, который вы видите выше.
Спасибо,
Алан
Я вернулся кочень простая структура, которая должна получать результаты без каких-либо ошибок (насколько я понимаю).
$(document).ready(function () {
$('#datepicker').datepicker({onSelect: function(dateText) {
var myDate = $(this).datepicker('getDate');
$('#apDiv1').html($.datepicker.formatDate('DD, d', myDate));
$('#apDiv5').html($.datepicker.formatDate('MM', myDate));
$('#apDiv7').html($.datepicker.formatDate('yy', myDate));
$.post('dayPower.php', {choice: dateText.val}, function(data) {
$('#apDiv2').html(data).show();
});
$.load('dayGraph', {choice: dateText.val}, function(data) {
$('#apDiv4').html().show();
});
$.post('monthPower.php', {choice: dateText.val}, function(data) {
$('#apDiv6').html(data).show();
});
$.load('monthGraph', {choice: dateText.val}, function(data) {
$('#apDiv9').html().show();
});
$.post('yearPower.php', {choice: dateText.val}, function(data) {
$('#apDiv8').html(data).show();
});
$.load('yearGraph', {choice: dateText.val}, function(data) {
$('#apDiv10').html().show();
});
}});
});
Затем возникают проблемы с PHP, которые должны работать, но НЕТ ... Возьмите dayPower.php какпример ...
<?
if(isset($_POST['choice']))
$choice = (isset($_POST['choice'])) ? date("Y-m-d",strtotime($_POST['choice'])) : date("Y-m-d");
$con = mysql_connect("localhost","inverters","XXXXXX");
if (!$con) {
die('Could not connect: ' . mysql_error());
}
mysql_select_db("inverters", $con);
$sql = 'SELECT date, sum(power/1000) AS power '
.'FROM feed '
.'WHERE date = $choice';
$res = mysql_query($sql) or die('sql='.$sql."\n".mysql_error());
$row = mysql_fetch_assoc($res);
echo $row['power'], '<br />';
mysql_close($con);
?>
PHP должен получить ДАТУ в формате, который mysql будет читать ясно, а затем получить значения SUM для даты и эхо в div ... но не такая удача... не понимаю почему.
Алан