if (isset($_POST['categoria'])) {
$categoria = $_POST['categoria'];
$consulta = connect_db("SELECT * FROM sub_categorias WHERE categoria = $categoria");
echo '<option value="" disabled="" selected="">Selecione a Sub-Categoria...</option>';
while ($row = mysqli_fetch_assoc($consulta)) {
echo '<option value"'. $row['id'] . '">' . $row['nome'] . '</option>';
}
}
if (isset($_POST['subcategoria'])) {
$subcategoria = $_POST['subcategoria'];
$fornecedor = $_POST['fornecedor'];
$consulta = connect_db("SELECT persianas.* , precos.fornecedor, precos.preco FROM persianas
INNER JOIN precos ON persianas.id = precos.persiana WHERE precos.fornecedor = $fornecedor AND persianas.sub_categoria = $subcategoria ");
echo '<option value="" disabled="" selected="">Selecione um Produto...</option>';
while ($row = mysqli_fetch_assoc($consulta)) {
echo '<option value="' . $row['id'] . '">' . $row['nome'] . '</option>';
}
}
O problema ocorre no select #subcat ao testar lá no php o que estou recebendo, verifiquei que o que esta indo é o texto do option e não o value, o value é uma ID, ou seja um inteiro, e esta inso uma string de varios caracteres que é o conteúdo do option.
OU sejaaaa o val esta atuando como text! o que sera que ta acontecendo?
Pergunta
Jackson Barreto
Olá amigos, estou recuperando o valor de um campo select com a função .val() e ela esta agindo como se fosse .text() !!! :S
tenho 2 campos selects e um funciona normalmente o segundo esta com este problema.
esse é o codigo do html.
<div class="row"> <div class="col-sm-4 form-group"> <label for="">Marca:</label> <select name="fornecedor" id="fornecedor" class="form-control" required> <option value="" disabled selected="">Selecione a Marca...</option> <?php $consulta = connect_db("SELECT * FROM fornecedor"); while ($row = mysqli_fetch_assoc($consulta)) { echo '<option value="' . $row['id'] . '">' . $row['nome'] . ' </option>'; } ?> </select> </div> <div class="col-sm-4 form-group categoria"> <label for="">Categoria:</label> <select class="form-control" id="categoria" required> <option value="" selected disabled>Selecione uma Categoria...</option> <?php $consulta = connect_db("SELECT * FROM categorias"); while ($row = mysqli_fetch_assoc($consulta)) { echo '<option value="'. $row['id'] .'">' . $row['nome'] . '</option>'; } ?> </select> </div> <div class="col-sm-4 formgroup subcategoria"> <label for="">Sub-Categoria</label> <select class="form-control" id="subcat" required> <option value="" disabled selected>Selecione a Sub-Categoria</option> </select> </div> </div> <div class="row produto"> <div class="col-sm-2 form-group"> <label for="">Local</label> <input type="text" name="local" class="form-control"> </div> <div class="col-sm-6 form-group"> <label name="produto" for="">Produto</label> <select id="produto" class="form-control" > <option value="" selected disabled>Escolha o produto...</option> </select> </div> <div class="col-sm-1 form-group"> <label for="">Cor </label> <select name="cor" id="" class="form-control"></select> </div> <div class="col-sm-1 form-group"> <label for="">Alt.</label> <input type="text" name="altura" class="form-control"> </div> <div class="col-sm-1 form-group"> <label for="">Larg.</label> <input type="text" name="largura" class="form-control"> </div> <div class="col-sm-1"> <h1> <button type="submit" name="new_item" class="btn btn-primary btn-sm glyphicon glyphicon-plus"></button></h1> </div> </div>O Jquary é este
$ (function(){ $(".subcategoria").hide(); $(".categoria").hide(); $(".produto").hide(); $("#fornecedor").change(function(){ $(".categoria").fadeIn(800); }); $("#categoria").change(function(){ $(".subcategoria").fadeIn(800); }); $("#categoria").change(function(){ $.post("escolheproduto.php", {categoria: $(this).val()}, function(valor){ $("#subcat").html(valor); }); }); $("#subcat").change(function(){ $(".produto").fadeIn(800); $.post("escolheproduto.php", {subcategoria: $(this).val(), fornecedor: $("#fornecedor").val()}, function(valor){ $("#produto").html(valor); }); }); });e o PHP é este:
if (isset($_POST['categoria'])) { $categoria = $_POST['categoria']; $consulta = connect_db("SELECT * FROM sub_categorias WHERE categoria = $categoria"); echo '<option value="" disabled="" selected="">Selecione a Sub-Categoria...</option>'; while ($row = mysqli_fetch_assoc($consulta)) { echo '<option value"'. $row['id'] . '">' . $row['nome'] . '</option>'; } } if (isset($_POST['subcategoria'])) { $subcategoria = $_POST['subcategoria']; $fornecedor = $_POST['fornecedor']; $consulta = connect_db("SELECT persianas.* , precos.fornecedor, precos.preco FROM persianas INNER JOIN precos ON persianas.id = precos.persiana WHERE precos.fornecedor = $fornecedor AND persianas.sub_categoria = $subcategoria "); echo '<option value="" disabled="" selected="">Selecione um Produto...</option>'; while ($row = mysqli_fetch_assoc($consulta)) { echo '<option value="' . $row['id'] . '">' . $row['nome'] . '</option>'; } }O problema ocorre no select #subcat ao testar lá no php o que estou recebendo, verifiquei que o que esta indo é o texto do option e não o value, o value é uma ID, ou seja um inteiro, e esta inso uma string de varios caracteres que é o conteúdo do option.
OU sejaaaa o val esta atuando como text! o que sera que ta acontecendo?
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.