PHP - Combobox no mantiene el valor al hacer submit

   
Vista:

Combobox no mantiene el valor al hacer submit

Publicado por adrian adri__lago@hotmail.com (16 intervenciones) el 16/11/2017 10:54:20
Tengo este codigo:

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
$(document).ready(function(){
	$.post("includes/getdescripcion.php",  function(data){
	      $("#cbx_Descripcion").html(data);
	});
 
	$("#cbx_Descripcion").change(function () {
		$('#cbx_Codigo').find('option').remove().end().append('<option value="0"></option>').val('0');   <!--S
		$("#cbx_Descripcion option:selected").each(function () {
			Descripcion = $(this).val();
            $.post("includes/getempleado.php", { Descripcion: Descripcion }, function(data){
	            $("#cbx_Codigo").html(data);
			});
 
	        $.post("includes/getturno.php", { Descripcion: Descripcion }, function(data){
			     $("#cbx_turno").html(data);
			});
 
			$.post("includes/getdepartamento.php", { Descripcion: Descripcion }, function(data){
				<!--
			    $("#cbx_departamento").html(data);
	        });

		});
	})

});

Y luego los select:

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
<table>
	<tr>
	<td width="230">
	     <p><strong> Selecciona Empresa : </strong></p>
	</td>
	<td width="900">
		<div class="form-group">
			<div class="col-sm-10">
				<select class="form-control" name="cbx_Descripcion"  id="cbx_Descripcion">
					<?php
					$descripcion= $_POST['cbx_Descripcion'];
		            ?>
					<option value="<?php   if($descripcion!='0'){
						echo $descripcion;
						}else{
							echo "Sin descripcion";
						}
						?>">
                            <?php   if($descripcion!='0'){
					        echo $descripcion;
						}
						else{
							echo echo "Sin descripcion";
						}
					?>
					</option>
				</select>
			</div>
		</div>
	</td>
</tr>
 
<tr>
	<td>
	<p><strong> Selecciona empleado : </strong></p>
	</td>
 
	<td>
		<div class="form-group">
			<div class="col-sm-10">
				<select class="form-control" name="cbx_Codigo" id="cbx_Codigo">
				<?php   $codigo= $_POST['cbx_Codigo'];?>
				<option value="<?php   if($codigo!='0'){
                    echo $codigo;
			      }else{
				   echo "Seleccionar Codigo";
			      }
					?>">
				      <?php
						if($codigo!='0') {
							echo $codigo;
						}else{
							echo "Seleccionar Codigo";
						}
					?>
					</option>
				</select>
			</div>
		</div>
	</td>
</tr>

Faltan varios select pero no son necesarios ponerlos porque son siempre igual y todos funcionan bien. El problema es que cuando envio la consulta con el submit me muestra los datos y todo bien eso pero me borra el primer campo el de empresa el segundo select y el resto en todos me mantiene el valor..
El codigo es exactamente igual paratodos asique nose porque el primer combobox me lo borra al enviar el submit. El submit lo envio a la misma pagina me crea una tabla con los datos.. El problema es que nos porque recarga el valor del primer campo porque si recargo con f5 la pagina se ve que pone el valor que seleccione pero en milesimas de segundo casi no da tiempo a verlo.. pero desaparece y pone el valor por defecto que tiene.. El value =0 que es Seleccionar Empresa.
Nose si alguien me puede ayudar.
Gracias
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

Combobox no mantiene el valor al hacer submit

Publicado por Miguel (211 intervenciones) el 16/11/2017 11:50:08
Claro, supongo que estás enviando el formulario (con GET o POST), y eso equivale a recargar la página. Ya que estás usando AJAX para llenar tus select's también podrías usarlo para tu proceso y no tener que recargar de nuevo (en lugar del submit). Aunque también se puede predeterminar la opción seleccionada desde el servidor colocándole el atributo selected a la opción del select, o con un script (JS) para que cambie al valor requerido.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
1
Comentar

Combobox no mantiene el valor al hacer submit

Publicado por adrian (16 intervenciones) el 16/11/2017 13:01:04
Podrias poner un ejemplo de solucion?
Porque llevo un tiempo intentando varias cosas pero no se me ocurre nada ya..
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

Combobox no mantiene el valor al hacer submit

Publicado por adrian (16 intervenciones) el 16/11/2017 13:47:50
La opcion de selected no me vale porque cuando le doy al submit se borra el campo y tiene valor (vacio).. entonces nada.. podria funcionar lo de cambiar el valor pero nose como hacer que funcione solo cuando pulse el boton y lo haga despues de que recargue porque si es antes lo sobreescribe como me pasa con el option value que le pongo.. lo cambia pero casi ni da tiempo a verlo y ya carga por defecto el valor 0 otra vez..
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

Combobox no mantiene el valor al hacer submit

Publicado por Miguel (211 intervenciones) el 16/11/2017 14:44:01
Mas o menos así es como te digo:

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
 
// valor default del select
$opcionDefault = 0;
 
// verificar si se envió el formulario
if isset($_POST["f_proceso"])
{
    // obtener la opción seleccionada
    $opcionSeleccionada = intval($_POST["opcion_seleccionada"]);
 
   // .... (código del procedimiento)
 
  // asignar el valor para mantener la selección
  $opcionDefault = $opcionSeleccionada;
}
 
?>
 
<HTML>
   <HEAD>
   </HEAD>
 
   <BODY>
 
      <!-- Al final del documento colocar un script para seleccionar la opción default -->
      <SCRIPT>
         // seleccionar opción predeterminada
         document.getElementById('mi_select').value = <?php echo $opcionDefault; ?> ;
      </SCRIPT>
   <BODY>
</HTML>
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

Combobox no mantiene el valor al hacer submit

Publicado por adrian (16 intervenciones) el 16/11/2017 15:32:11
Probe de esa forma.. y me da el valor correcto la variable $optionDefault.. pero el primer Select sigue con el valor por defecto no cambia nose si esta bien escrita la linea de document.getElementById... pero el php funciona pero no coge el valor..
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

Combobox no mantiene el valor al hacer submit

Publicado por adrian (16 intervenciones) el 16/11/2017 16:00:59
He conseguido que el valor quede en blanco.. pero no el valor que yo le pongo..
Cuando hago document.getElementById('mi_select').value = <?php echo $opcionDefault; ?> ;
Y el valor de $optionDefault es 1 o 2 o etc queda en blanco el select..
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

Combobox no mantiene el valor al hacer submit

Publicado por adrian (16 intervenciones) el 16/11/2017 17:26:55
Una duda es posible que cuando le de al submit recargue automaticamente un valor en el primer campo.. es decir que detecte el change fuction y poder cambiar el select 2 sin tocar el primer que ya venga cargado.. con option value me deja el dato pero luego no me deja modificar el 2 valor si no cambio el 1..
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
Revisar política de publicidad