Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá galerinha..
Gostaria de saber como que ao selecionar um item de uma combo, desabilite uma caixa de texto ??? exemplo...
<select size="1" name="tb_cg_status" class="textfiel"> <?php switch ($tb_cg_status) { case "Ativo": echo "<option value=\"\"> -- Selecione -- </option>"; echo "<option value=\"Ativo\" selected> Ativo</option>"; echo "<option value=\"Inativo\">Inativo desde:</option>"; break; case "Inativo": echo "<option value=\"\"> -- Selecione -- </option>"; echo "<option value=\"Ativo\"> Ativo </option>"; echo "<option value=\"Inativo\" selected> Inativo desde: </option>"; break; default: echo "<option value=\"\" selected> -- Selecione -- </option>"; echo "<option value=\"Ativo\"> Ativo </option>"; echo "<option value=\"Inativo\"> Inativo desde: </option>"; break; }?> </select><input type="text" name="tb_cg_data" size="10" maxlength="10" value="<?php echo $tb_cg_data_desligamento ?>" class="textfiel" onkeypress="return txtBoxFormat(document.cadastro_pf, 'tb_cg_data_desligamento', '99/99/9999', event);">Quando for selecionado o valor Ativo, desabilita o text field data... qdo inativo desde, o text field data fica habilitado...
Importante: gostaria que fosse sem dar reload na página...
Obrigada desde já
Alica CWB :ph34r:
Eu implementaria assim:
<script>function teste(obj){ if(obj.options[obj.selectedIndex].value == '1') document.forms[0].tb_cg_data.disabled = true; else document.forms[0].tb_cg_data.disabled = false;}</script><form name=form1 id=form1><select onchange="teste(this)"><option value=0>Selecione</option><option value=1>Ativo</option><option value=2>Inativo Desde</option></select><input type="text" name="tb_cg_data" size="10" maxlength="10" value="10/07/2003" class="textfiel"></form>Oi himon...valeu pela ajuda, mas tem um problema....Eu setando os valores = 0,1,2..., qdo isso vai para o banco de dados, vai como 0,1,2... sacou ?Gostaria que fosse como ativo ou inativo...É fácil de resolver isso ??Nao entendo quase nada de js....Valeu.Alica CWB
Oi jsp_devinfelizmente deu na mesma...Alica CWB
jsp_dev..Será que se eu trocar (na funçao) o numero 1 para ativo, dá certo ?^nao dá nenhum tipo de pane do js ???Valeu !Alica CWB
Dá certo sim se o valor do select for "ativo" ou "inativo"Por exemplo:<select onchange="teste(this)"><option value=selecione>Selecione</option><option value=Ativo>Ativo</option><option value=Inativo>Inativo Desde</option></select>e na função: if(obj.options[obj.selectedIndex].value == 'Ativo')Valeu galerinha !!!Vcs sao mto gente boa ! Funcionou direitinho ! :D Té a próxima.Alica CWB :D :D :D
tava bom demais pra ser verdade... :D
Tem um problema... Esse eh um form dinamico, ou seja, ele pode ser alterado a qquer momento...
Portanto, se eu errei algum dado, eu edito meu curriculum, e altero o q eu quero...
Quando eu edito, o php traz os dados já cadastrados, e exibe nos text fiel e combo box, respectivamente, para que os dados seja alterados...
Só que eu editei um curriculum em que o status da pessoa está como ativo, e o campo data, estava habilitado, qdo na realidade, deveria estar desabilitado...
Eu acho que devido ao chamamento da funçao ser OnChange, ele só vai desbalilitar o campo data (chamar a função), qdo for "editado" a combo box.
Tentei trocar o OnChange para OnLoad, mas nao funcionou... o que eu poderia usar pra chamar a função ??
function disable(obj){ if(obj.options[obj.selectedIndex].value == 'Ativo') document.forms[0].tb_cg_data_desligamento.disabled = true; else document.forms[0].tb_cg_data_desligamento.disabled = false;}<form action="<?php echo "$PHP_SELF"; ?>" method="post" name="cadastro_pf"><select size="1" name="tb_cg_status_registro" class="textfiel" onload="disable(this)"> <?php switch ($tb_cg_status_registro) { case "Ativo": echo "<option value=\"\"> -- Selecione -- </option>"; echo "<option value=\"Ativo\" selected> Ativo </option>"; echo "<option value=\"Inativo\"> Inativo desde: </option>"; break; case "Inativo": echo "<option value=\"\"> -- Selecione -- </option>"; echo "<option value=\"Ativo\"> Ativo </option>"; echo "<option value=\"Inativo\" selected> Inativo desde: </option>"; break; default: echo "<option value=\"\" selected> -- Selecione -- </option>"; echo "<option value=\"Ativo\"> Ativo </option>"; echo "<option value=\"Inativo\"> Inativo desde: </option>"; break; }?> </select><input type="text" name="tb_cg_data_desligamento" size="10" maxlength="10" value="<?php echo $tb_cg_data_desligamento ?>" class="textfiel" onkeypress="return txtBoxFormat(document.cadastro_pf, 'tb_cg_data_desligamento', '99/99/9999', event);"></form>
Alica CWB :D
:lol: Olá galerinha !
Entao.. o problema foi resolvido com php e ficou assim...
<input type="text" name="tb_cg_data_desligamento" size="10" maxlength="10" value="<?php echo $tb_cg_data_desligamento ?>" class="textfiel" onkeypress="return txtBoxFormat(document.cadastro_pf, 'tb_cg_data_desligamento', '99/99/9999', event);"[COLOR=red] <?php if ($tb_cg_status_registro == "Ativo") { echo " disabled"; }; ?>[/COLOR]>
Valeu pela ajuda pessoal...
Alica CWB :lol: