Fóruns sobre PHP, JavaScript, HTML, MySQLi, jQuery, Banco de Dados, CSS


Moderador: web

 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 237
Localização: Florianópolis/SC
Contato:

adicionar options ao select com javascript

17-11-2008 14:03

Tenho um SELECT (combobox) que estou usando javascript para preencher, funciona assim:

JAVASCRIPT
<script language="javascript"> makes=new Array(); models=new Array();   models['Alfa Romeo']='145,146,147,155,156,159,159SW,164,166,33,75,80,90,Alfasud,Alfetta.Brera,Giulia,GTA,GTV,Giulietta,Montreal v8,rz,Spider,Spider 2.0,Spint,GT,GTV,Imola,SZ Coupe';   models['Alpina']='B10,B12,B3,B5,B6,B7,B8,D10';   models['Aston Martin']='AR1,DB,DB7,DB9,DBS,Lagonda,Vanquish,Vantage,Virage,Volante';       function ChangeMake(x) {         var strMake= x.options[x.selectedIndex].value;           var CurrentModels = models[strMake].split(',');           document.form1.car_model.options.length = 1;           for (var i=0; i < CurrentModels.length; i++)         {                         document.form1.car_model.options[i+1] = new Option(CurrentModels[i], CurrentModels[i], 0, 0);         }                           document.form1.car_model.options[0].selected =  true; }   </script>

PARTE HTML
<form action="index.php" style="margin-top:0px;margin-bottom:0px" method="post" name="form1">   <select style="width:354px" name="car_make" id="car_make" onchange="ChangeMake(this);">    <option>Marcas</option>    <option value="Alfa Romeo">Alfa Romeo</option>    <option value="Alpina">Alpina</option>    <option value="Aston Martin">Aston Martin</option> </select>  <BR> <select style="width: 354px;" name="car_model" id="car_model">       <option>Modelo</option>   </select>

Então qdo seleciona a MARCA ele insere as opções no campo MODELO, mas eu preciso que seja inserido com o "value' no option:

<option  value="id">nome</option>

pq estou usando este scritp integrado com banco de dados, que tem um ID para cada valor.
como adaptar este script pra que seja possivel acrescenter o VALUE no OPTION?
0
MIDZ.com.br
http://www.midz.com.br
Soluções Web
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17721
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

adicionar options ao select com javascript

17-11-2008 14:24

Eu fiz um teste aqui com seu script e recebi o valor do segundo select, a única alteração que fiz foi trocar o option do select: car_model por esse:

<option value="">Modelo</option>

E peguei o valor por

echo $_POST['car_model']; 

0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 237
Localização: Florianópolis/SC
Contato:

adicionar options ao select com javascript

17-11-2008 14:34

sim, entendi, mas eu quero o ID do carro, esta parte javascript

models['Alpina']='B10,B12,B3,B5,B6,B7,B8,D10';

é gerada via uma consulta no banco de dados, e cada carro modelo de carro tem uma ID, eu preciso enviar esta ID por este formulario onde esta o combo.
0
MIDZ.com.br
http://www.midz.com.br
Soluções Web
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17721
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

adicionar options ao select com javascript

17-11-2008 14:37

Isso não são os modelos: B10,B12,B3,B5,B6,B7,B8,D10 ?

Quando eu fiz um teste aqui de submit, enviei, e recebi o modelo, porque nesse script, o text e value do option são a mesma coisa, e é enviado o valor.
0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 237
Localização: Florianópolis/SC
Contato:

adicionar options ao select com javascript

17-11-2008 15:19

sim, são os MODELOS, mas cada MODELO tem uma ID no banco de dados.
eu preciso receber esta ID qdo o formulário é enviado.

o option deveria ficar

<SELECT..> <option value="ID">MODELO</option> ... </SELECT>

Mas eu nao sei onde inserir o ID neste script.
0
MIDZ.com.br
http://www.midz.com.br
Soluções Web
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17721
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

adicionar options ao select com javascript

17-11-2008 15:21

Faz o seguinte:

modelo-id, modelo-id,..

models['Alpina']='B10-1,B12-2,B3-3,B5-4,B6-5,B7-6,B8-7,D10-8';

Ai fica

document.form1.car_model.options[i+1] = new Option(CurrentModels[i], CurrentModels[i].split('-')[1], 0, 0);

0
A melhor hospedagem para o seu site HostGator!
 
Mais de 100 postagens
Mais de 100 postagens
Tópico Autor
Mensagens: 237
Localização: Florianópolis/SC
Contato:

adicionar options ao select com javascript

17-11-2008 15:44

Bem isto fera, só tive que fazer duas alterações.

1º - No banco de dados, existem nomes compostos, então troquei o "-" pelo "#" para nao haver erro,

ai os no SELECT ficaram assim: MODELO#MODELO, EXEMPLO#EXEMPLO,
fiz o seguinte

2º -
modelo-id, modelo-id,..

models['Alpina']='B10#1,B12#2,B3#3,B5#4,B6#5,B7#6,B8#7,D10#8';

Ai fica

document.form1.car_model.options[i+1] = new Option(CurrentModels[i].split('#')[0], CurrentModels[i].split('#')[1], 0, 0);

pq usei um "split('#')['0]" naquele primeiro valor, para quebra novamente a palavra.

ficou certinho, valeu
0
MIDZ.com.br
http://www.midz.com.br
Soluções Web
 
Avatar do usuário
ADMIN
ADMIN
Mensagens: 17721
Nome: Kleber
Descrição do site: Onde você encontra scripts grátis para o seu site
Sexo: Masculino
Localização: RJ / RJ / Brasil
Contato:

adicionar options ao select com javascript

17-11-2008 16:52

Boa :8)
0
A melhor hospedagem para o seu site HostGator!

Quem está online

Usuários navegando neste fórum: Nenhum usuário registrado