Jump to content
nanduxs

Listagem com Com combox

Recommended Posts

nanduxs

boas pessoal

Entao e o seguinte

Estou a desenvolver um site para gerir orçamentos de peças de computadores, e a minha dificuldade esta num script ou seja,

quando o cliente seleciona outros, aparecera uma caixinha a frente para descrever a sua nova marca, mas quando seleciona a marca ira aparecer em baixo outra combo para selecionar o modelo

e ai vai o script, que acho q esta mal:

<script type="text/javascript">

function novamarca() {

// note que não é o valor da option e sim o conteúdo

if(document.cadastrar.lista.value=="Outros") {

document.getElementById("minhadiv").style.display="block";

document.getElementById("minhaoutradiv").style.display="none";

} else {

document.getElementById("minhadiv").style.display="none";

document.getElementById("minhaoutradiv").style.display="block";

{

if (str=="outros")

  {

  document.getElementById("txtHint").innerHTML="";

  document.getElementById("minhadiv").style.display="block";

  document.getElementById("minhaoutradiv").style.display="none";

  return;

  }

if (window.XMLHttpRequest)

  {// code for IE7+, Firefox, Chrome, Opera, Safari

  xmlhttp=new XMLHttpRequest();

  }

else

  {// code for IE6, IE5

  xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");

  }

xmlhttp.onreadystatechange=function()

  {

  if (xmlhttp.readyState==4 && xmlhttp.status==200)

    {

    document.getElementById("txtHint").innerHTML=xmlhttp.responseText;

    }

  }

}

if(document.cadastrar.lista.value=="") {

document.getElementById("minhadiv").style.display="none";

document.getElementById("minhaoutradiv").style.display="none";

}

}

</script>

Agora o select

<select name="lista"  onchange="novamarca()">

  <option value="ss"></option>

  <?php

do { 

?>

  <option value="<?php echo $row_rs_marca['Id_marca']?>"><?php echo $row_rs_marca['Descricao']?></option>

  <?php

} while ($row_rs_marca = mysql_fetch_assoc($rs_marca));

  $rows = mysql_num_rows($rs_marca);

  if($rows > 0) {

      mysql_data_seek($rs_marca, 0);

  $row_rs_marca = mysql_fetch_assoc($rs_marca);

  }

?>

<option value="Outros">Outros</option>

</select>

e agora o ficheiro php que filtra a marca

<?php

$con = mysql_connect("127.0.0.1","root","");

if (!$con)

  {

  die('Could not connect: ' . mysql_error());

  }

mysql_select_db("bbinaria", $con);

?>

<?php

echo "<select style='width:250px;' name='subTheme' id='subTheme'>";

echo "<option>Escolha uma opção...</option>";

$result = mysql_query("SELECT * FROM t_modelo WHERE marca='" . $_GET['q'] . "'");

while($row = mysql_fetch_array($result)){

echo "<option>" . utf8_encode($row['Modelo']) . "</option>";

}

echo "</select>";

?>

Share this post


Link to post
Share on other sites
brunoais

Pôe os códigos dentro das tags code correspondentes (para php, para html e para javascript).

Senão é demasiado complicado ler esse código.


"[Os jovens da actual geração]não lêem porque não envolve um telecomando que dê para mirar e atirar, não falam porque a trapalhice é rainha e o calão é rei" autor: thoga31

Life is a genetically transmitted disease, induced by sex, with death rate of 100%.

Share this post


Link to post
Share on other sites
ruimcosta

So de olhar para esse código perdi logo a vontade. Demorei menos tempo a fazer o exemplo de novo que a ver o que corre mal nesse:

<script type="text/javascript" src="http://www.google.com/jsapi"></script>
<script type="text/javascript">
google.load("jquery", "1.4.2");
</script>


<select id="options">
    <option value="1">Categoria 1</option>
    <option value="2">Categoria 2</option>
    <option value="3">Categoria 3</option>
    <option value="4">Categoria 4</option>
    <option value="5">Categoria 5</option>
</select>

<a href="#" id="add">Adicionar Categoria</a>
<script>
$(document).ready(function(){
    $("#add").click(function(){
        if( $("#txtadd").length == 0 ){
            $(this).after('<input type="text" name="txtadd" id="txtadd" />');
            $("#txtadd").focus();
        }    
    });
    
    $("#txtadd").live('keyup', function(e){
        if( e.keyCode == 13 ){
            var op = $(this).val();
            
            $('#options').append(new Option(op, op, true, true));
            $(this).remove();
        }
    });
});
</script>

Agora... este exemplo só acrescenta na select o modelo novo...não adiciona na base de dados e para isso será necessário um $post via ajax. Vê se percebes isso que depois mais logo ajudo-te no resto.


Abraços e beijinhos,Rui Costa

Share this post


Link to post
Share on other sites
nanduxs

ok

entao vou explicar o que pretendo fazer. tenho uma base de dados em mysql com as seguintes tabelas

MARCA , SERIE  E MODELO

ou seja

ao selecionar a marca ira aparecer uma combo com as series respectivas aquela marca, e depois de selecionar a serie, ainda aparece uma combo com modelos respectivos a marca e serie selecionados anteriormente

Agradeço ajuda

Cumprimentos Fernando Monteiro

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×
×
  • Create New...

Important Information

By using this site you accept our Terms of Use and Privacy Policy. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.