PHP - actualizar comobo JQuery-php

 
Vista:
sin imagen de perfil
Val: 729
Bronce
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

actualizar comobo JQuery-php

Publicado por gonzalo (615 intervenciones) el 20/06/2017 00:43:08
buenos dias a todos.

estoy tratando de actualizar un combo usando JQuery y php, al cambiar el combo del año o el mes debe actualizar el combo del calendario.

si funciona, pero no logro pasar la informacion al combo del calendario, hice la prueba mandando la informacion del combo a un text y si la muestra.

tal vez la solucion sea agregar un div, borrar el child y agregar el combo pero no se si se pueda.

alquien que me pueda ayudar?

graxias!

archivo JQuery.php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
<!DOCTYPE html>
<html>
<head>
<script src="JQuery/jquery-3.2.1.min.js"></script>
<script>
$(document).ready(function()
{
	$("#DdYear").change(function()
	{
		$.post("DdCalendario.php",
    {
        Year: "2014",
        Month: "01"
    },
    function(data, status)
    {
       $("#Mensaje").text(data);
    });
	});
});
</script>
<?php
 
function DdYear()
{
	$Year=intval(date("Y"));
	echo('<select id="DdYear">');
		for($i=1;$i<90;$i++)
		{
	  	echo('<option value="'.$Year.'"');
 
	  	echo('>'.$Year.'</option>');
	  	$Year--;
		}
	echo('</select>');
}
 
function DdMonth($Mes)
{
	//$Mes=intval($Mes);
 
	$Month=array(
		1=>"Enero",
		"Febrero",
		"Marzo",
		"Abril",
		"Mayo",
		"Junio",
		"Julio",
		"Agosto",
		"Septiembre",
		"Octubre",
		"Noviembre",
		"Diciembre"
	);
 
	echo('<select Id="DdMonth">');
		for($i=1;$i<=12;$i++)
		{
	  	echo('<option value="'.$i.'"');
	  	if($i==$Mes)
	  	{
	  		echo(' selected');
	  	}
	  	echo('>'.$Month[$i].'</option>');
		}
	echo('</select>');
 
}
 
function DdCalendario($Year,$Month,$Fecha)
{
	$date=mktime(0,0,0,$Month,1,$Year);
 
	$i=0;
 
	echo('<select Id="DdDate">');
	for($i=0;$i<34;$i++)
	{
		echo('<option value="'.date("Ymd",$date).'"');
		if($Fecha==intval(date("Ymd",$date)))
		{
			echo(' selected');
		}
		echo('>'.date("Y-m-d",$date).'</option>');
 
 
		$date=mktime(0,0,0,$Month,1+$i,$Year);
		if(date("m",$date)!=$Month)
		{
			break;
		}
	}
	echo('</select>');
}
 
?>
</head>
<body>
 
<table border="1">
	<tr>
		<td>
			Año
		</td>
		<td>
			<?php DdYear();?>
		</td>
	</tr>
	<tr>
		<td>
			Mes
		</td>
		<td>
			<?php DdMonth(date("m"));?>
		</td>
	</tr>
	<tr>
		<td>
			Fecha
		</td>
		<td>
			<?php DdCalendario(date("Y"),date("m"),date("Ymd"));?>
		</td>
	</tr>
</table>
<button id="button">Set Text</button>
<label id="Mensaje">mensaje</label>
 
</body>
</html>

y este es el DdCalendario php, este es el que regresa los nuevos valores para el combo, de momento no importa cual año elija, va a poner Mayo del 2014.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
 
 
function DdCalendario($Year,$Month,$Fecha)
{
	$date=mktime(0,0,0,$Month,1,$Year);
 
	$i=0;
 
	echo('<select Id="DdDate">');
	for($i=0;$i<34;$i++)
	{
		echo('<option value="'.date("Ymd",$date).'"');
		if($Fecha==intval(date("Ymd",$date)))
		{
			echo(' selected');
		}
		echo('>'.date("Y-m-d",$date).'</option>');
 
 
		$date=mktime(0,0,0,$Month,1+$i,$Year);
		if(date("m",$date)!=$Month)
		{
			break;
		}
	}
	echo('</select>');
}
 
DdCalendario("2014","05","20140515");
 
?>

y si funciona porque me regresa esto

<select Id="DdDate"><option value="20140501">2014-05-01</option><option value="20140501">2014-05-01</option><option value="20140502">2014-05-02</option><option value="20140503">2014-05-03</option><option value="20140504">2014-05-04</option><option value="20140505">2014-05-05</option><option value="20140506">2014-05-06</option><option value="20140507">2014-05-07</option><option value="20140508">2014-05-08</option><option value="20140509">2014-05-09</option><option value="20140510">2014-05-10</option><option value="20140511">2014-05-11</option><option value="20140512">2014-05-12</option><option value="20140513">2014-05-13</option><option value="20140514">2014-05-14</option><option value="20140515" selected>2014-05-15</option><option value="20140516">2014-05-16</option><option value="20140517">2014-05-17</option><option value="20140518">2014-05-18</option><option value="20140519">2014-05-19</option><option value="20140520">2014-05-20</option><option value="20140521">2014-05-21</option><option value="20140522">2014-05-22</option><option value="20140523">2014-05-23</option><option value="20140524">2014-05-24</option><option value="20140525">2014-05-25</option><option value="20140526">2014-05-26</option><option value="20140527">2014-05-27</option><option value="20140528">2014-05-28</option><option value="20140529">2014-05-29</option><option value="20140530">2014-05-30</option><option value="20140531">2014-05-31</option></select>

pero no logro dirigir estos valores al Dd que tiene las fechas.

gracias por la ayuda!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de kip
Val: 2.325
Plata
Ha disminuido 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

actualizar comobo JQuery-php

Publicado por kip (877 intervenciones) el 20/06/2017 02:42:02
Hola, creo que con esto deberia funcionarte:

1
2
3
4
5
6
7
8
9
10
11
$(document).ready(function() {
    $("#DdYear").change(function() {
        $.post("DdCalendario.php", {
                Year: "2014",
                Month: "01"
            },
            function(data, status) {
                $("#DdDate").parent().html(data);
            });
    });
});

Voy un nivel mas arriba del select, es decir al elemento padre porque en tu archivo DdCalendario.php en lugar de mostrar solo elementos option, muestras el select completo.

Pruebalo y avisanos.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar
sin imagen de perfil
Val: 729
Bronce
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

actualizar comobo JQuery-php

Publicado por Gonzalo (615 intervenciones) el 20/06/2017 23:08:34
MAGO!!!
BRUJO!!!
GURU del JQuery!!!

exactamente lo que necesitaba!!!

GRACIAS!!!
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar