Мой новый квест был тяжелым, чтобы услышать его ... Я не нашел нить здесь, чтобы привести меня на правильный путь в моей ситуации.JQuery Events from datepicker
У меня есть один встроенный datepicker. У меня есть так, что выбранная дата будет отображаться в 3 DIV. Один за день («DD, d»), другой за месяц («ММ»), а затем Год («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 .. Позвольте мне сосредоточиться только на День ("DD, d ") DIV .. (# apDive1).
Когда дата выбрана на datepicker, дата будет отображаться в (# apDiv1) в формате «DD, d». поэтому, когда это «изменение» произойдет, оно опубликует эту дату в «daypower.php», чтобы отобразить значение суммы этого дня в (# apDiv2) .... И такое же изменение также опубликует «daygraph.php», чтобы вернуться данные в (# apDive4).
Все, что я сделал, потерпело неудачу ... Я вернусь только к дате ... вы можете взглянуть на the page to visually see what I am trying to do.
Я попытался перенести дату на страницу, и этот 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);
?>
РНР должен получить дату в формат, который mysql будет читать четко, а затем получить значения SUM для даты и эхо в div ... но нет такой удачи ... Я не понимаю, почему.
Алан
Я видел страницу, при условии. Похоже, что при изменении даты даты корректно обновляются в `# apDiv1`,` # apDiv5` и `# apDiv7` в форматах` DD, d`, `MM` и` yy`. Вы застряли в части отправки и отображаете значение суммы в `# apDiv2` и` # apDiv4`? – 2010-11-24 07:31:53
Да ... поэтому, когда новая дата вступает в # apDiv1 от datepicker, событие изменения будет выполнять действия POST 2 - # apDiv2 И # apDiv4 ... Теперь apDiv2 - это просто номер, который dayPower.php будет получать из mysql из дата в # apdiv1 и # apDiv4 - это график, который будет создан днем dayGraph.php с даты в # apDiv1 ... поэтому «CHANGE» в # apDiv1 вызовет сразу два события. – hkalan2007 2010-11-24 07:46:13