У меня есть этот код и все функционирует хорошо.
Но они попросили у меня, что, выбрав пол, например, да я выбираю "САМКА", select
'КАСТРАТА' он, должно быть, скрывает и да выбрав, нужно давать возможность "САМЦУ" select
'КАСТРАТА' и мочь сохранять.
Здесь я оставляю им код envió данных php в mysql и HTM
Здесь - структура таблицы, с которой работал этот формуляр.
Todos los campos son obligatorios.';
}else{
$sexo = $_POST['sexo'];
$tipo = $_POST['tipo'];
$raza = $_POST['raza'];
$raza_pater = $_POST['raza_pater'];
$raza_mater = $_POST['raza_mater'];
$castrado = $_POST['castrado'];
$vacunas = $_POST['vacunas'];
$fecha_n = $_POST['fecha_n'];
$peso = $_POST['peso'];
$fecha_i = $_POST['fecha_i'];
$result = 0;
include "../conexion.php";
$query_insert = mysqli_query($conection,"INSERT INTO cerdo (cod_sexo, cod_tipo, cod_raza, cod_raza_paterna, cod_raza_matern, castrado, cod_vacuna,
fecha_nacimiento, peso_inicial, fecha_ingreso_granja)
Values('$sexo','$tipo', '$raza','$raza_pater', '$raza_mater', '$castrado', '$vacunas', '$fecha_n','$peso','$fecha_i' )");
if ($query_insert) {
$alert = 'Cerdo registrado correctamente.
';
}else{
$alert = 'Error al registrar el cerdo.
';
}
}
}
mysqli_close($conection);
?>
Registro Cerdo
Registrar Cerdo
Ты можешь делать одну funciГіn из JS, любое сомнение не сомневайся в том, чтобы спрашивать, я надеюсь, что оно ты функционирует.
<select name="sexo" id="sexo" onchange="mostrar()"><!--agregamos la función al atributo onchange para que se ejecute cada que cambies el valor.-->
<option disabled selected>Selecciona el sexo</option>
<?php
if ($result_sexo > 0)
{
while ($sexo = mysqli_fetch_array($query_sexo)) {
?>
<option value="<?php echo $sexo[" cod_sexo "]; ?>">
<?php echo $sexo["descripcion_sexo"];?>
</option>
<?php
}
}
?>
</select>
<script>
function mostrar(){
var sexo = document.getElementById('sexo').value;
var divCastrado = document.getElementById('castrados');
var selectCastrado = document.getElementById('castrado');
if(sexo == 'HEMBRA'){
selectCastrado.removeAttribute('required',''); // removemos el atributo required ya que estamos ocultando pero al dar submit el campo estará vació y te marcará error
selectCastrado.disabled= 'true';
}else{
selectCastrado.setAttribute('required','');//Agregamos el atributo required para que no se pase por alto el campo
selectCastrado.disabled='false'; //cambiamos el atributo disabled por false para que pueda seleccionar
}
}
</script>
Для которого ты просишь, ты можешь использовать JS
и признак disabled из HTML
.
Для этого создает listener в select
пола и анализируется она opciГіn, что выбирает. Если он - 'Самец', лишают признака disabled
select
кастрата, и тебе позволяет выбирать это
let sexo = document.getElementById('sexo');
sexo.addEventListener("change", function(){
if (sexo.value.toUpperCase() == 'MACHO') {
document.getElementById('castrado').disabled = false;
}else {
document.getElementById('castrado').disabled = true;
}
});
<label for="sexo">Sexo</label>
<select class="sexo" id="sexo" name="sexo">
<option disabled selected value="0"> Seleccione sexo</option>
<option value="macho">Macho</option>
<option value="hembra">Hembra</option>
</select>
<label for="castrado">Castrado</label>
<select class="castrado" id="castrado" name="castrado" disabled>
<option selected value="0"></option>
<option value="si">Si</option>
<option value="no">No</option>
</select>