Bom dia, poderia me ajudar?
Como faço para quando eu selecionar no campo status ativo ficar com uma cor verde e desativado com uma cor vermelha no formulário de cadastro.
Tabela notebook -> Campo -> situacao_status = Ativo - Desativado SC 9
Bom dia, poderia me ajudar?
Como faço para quando eu selecionar no campo status ativo ficar com uma cor verde e desativado com uma cor vermelha no formulário de cadastro.
Tabela notebook -> Campo -> situacao_status = Ativo - Desativado SC 9
Criar campo virtual e na onload atribuir a ele o valor do campo da tabela entre tag span com style color.
Agora se o campo for editável tem que ser via javascript/form/onload usando jquery para trocar o css do campo
Obrigado pelo retorno poderia colocar exemplo?
Já fiz assim e não da nada
if({situacao_status} == “Emprestado”)
{
sc_field_style({situacao_status}, “”, “”, “#FF0000”, “”, “”);
}
if({situacao_status} == “Devolvido”)
{
sc_field_style({situacao_status}, “”, “”, “#00FF00”, “”, “”);
}
e coloquei no javascript e nada
Se for um formulário ou controle coloque esse código no Evento OnLoad, e selecione as
cores desejadas na função, ela é uma função JavaScript pura.
echo "
<script type='text/javascript'>
function TarjetaCOR_JS(Campo, Cor) {
var Campo = 'id_sc_field_' + Campo.toLowerCase();
switch (Cor) {
case 'ROXO':
var Cor_Texto = 'white';
var Cor_Fundo = '#6500CC';
break;
case 'VERDE ESCURO':
var Cor_Texto = 'white';
var Cor_Fundo = '#003300';
break;
case 'ROSA':
var Cor_Texto = 'white';
var Cor_Fundo = '#FF00FF';
break;
case 'BRANCO':
var Cor_Texto = 'black';
var Cor_Fundo = '#FFFFFF';
break;
case 'LARANJA':
var Cor_Texto = 'white';
var Cor_Fundo = '#FF6500';
break;
case 'VERMELHO ESCURO':
var Cor_Texto = 'white';
var Cor_Fundo = '#800000';
break;
case 'VERDE CLARO':
var Cor_Texto = 'white';
var Cor_Fundo = '#008000';
break;
case 'MARROM':
var Cor_Texto = 'white';
var Cor_Fundo = '#993300';
break;
case 'CINZA':
var Cor_Texto = 'white';
var Cor_Fundo = '#808080';
break;
case 'AMARELO':
var Cor_Texto = 'black';
var Cor_Fundo = '#FFFF00';
break;
case 'PRETO':
var Cor_Texto = 'white';
var Cor_Fundo = '#000000';
break;
case 'VERMELHO CLARO':
var Cor_Texto = 'white';
var Cor_Fundo = '#FF0000';
break;
case 'BEGE':
var Cor_Texto = 'black';
var Cor_Fundo = '#FFCC99';
break;
case 'AZUL ESCURO':
var Cor_Texto = 'white';
var Cor_Fundo = '#000080';
break;
case 'AZUL CLARO':
var Cor_Texto = 'white';
var Cor_Fundo = '#3365FF';
break;
default:
// VERDE CLARO
var Cor_Texto = 'white';
var Cor_Fundo = '#008000';
} // switch (Cor)
document.getElementById(Campo).style.color = Cor_Texto;
document.getElementById(Campo).style.fontWeight = 'bold';
document.getElementById(Campo).style.backgroundColor = Cor_Fundo;
} // function TarjetaCOR_JS(Campo, Cor)
</script>";
if ({situacao_status} == 'Emprestado') {
sc_ajax_javascript("TarjetaCOR_JS('situacao_status', 'VERMELHO CLARO')");
}
if ({situacao_status} == 'Devolvido') {
sc_ajax_javascript("TarjetaCOR_JS('situacao_status', 'VERDE CLARO')");
}
Observação usado no Scriptcase 9.6
Boa Tarde adicionei no onload e não funcionou o campo ainda fica coma cor padrão.
Tenho que alterar algo aqui
Me desculpe pois sou novo nisto e aprendendo
echo "
Não o único local para alterar é aqui que é o nome do seu campo no formulário, na rotina que esta dentro do < script > não mexe em nada.
if ({situacao_status} == 'Emprestado') {
sc_ajax_javascript("TarjetaCOR_JS('situacao_status', 'VERMELHO CLARO')");
}
if ({situacao_status} == 'Devolvido') {
sc_ajax_javascript("TarjetaCOR_JS('situacao_status', 'VERDE CLARO')");
}
E qual a versão do seu Scriptcase?
9.6. Scriptcase
Coloquei da forma que informou. No onload dentro do form
Cola aqui uma print-screen dos campos da sua tela, mostrando o nome deste campo situacao_status, e coloca todo o código OnLoad que você colocou, copia e cola o código aqui no forum entre [ code ] [ /code] para ele aparecer correto para eu pode checar o que você esta fazendo errado.
Segue conforme solicitado.
```
echo "
<script type='text/javascript'>
function TarjetaCOR_JS(Campo, Cor) {
var Campo = 'id_sc_field_' + Campo.toLowerCase();
switch (Cor) {
case 'ROXO':
var Cor_Texto = 'white';
var Cor_Fundo = '#6500CC';
break;
case 'VERDE ESCURO':
var Cor_Texto = 'white';
var Cor_Fundo = '#003300';
break;
case 'ROSA':
var Cor_Texto = 'white';
var Cor_Fundo = '#FF00FF';
break;
case 'BRANCO':
var Cor_Texto = 'black';
var Cor_Fundo = '#FFFFFF';
break;
case 'LARANJA':
var Cor_Texto = 'white';
var Cor_Fundo = '#FF6500';
break;
case 'VERMELHO ESCURO':
var Cor_Texto = 'white';
var Cor_Fundo = '#800000';
break;
case 'VERDE CLARO':
var Cor_Texto = 'white';
var Cor_Fundo = '#008000';
break;
case 'MARROM':
var Cor_Texto = 'white';
var Cor_Fundo = '#993300';
break;
case 'CINZA':
var Cor_Texto = 'white';
var Cor_Fundo = '#808080';
break;
case 'AMARELO':
var Cor_Texto = 'black';
var Cor_Fundo = '#FFFF00';
break;
case 'PRETO':
var Cor_Texto = 'white';
var Cor_Fundo = '#000000';
break;
case 'VERMELHO CLARO':
var Cor_Texto = 'white';
var Cor_Fundo = '#FF0000';
break;
case 'BEGE':
var Cor_Texto = 'black';
var Cor_Fundo = '#FFCC99';
break;
case 'AZUL ESCURO':
var Cor_Texto = 'white';
var Cor_Fundo = '#000080';
break;
case 'AZUL CLARO':
var Cor_Texto = 'white';
var Cor_Fundo = '#3365FF';
break;
default:
// VERDE CLARO
var Cor_Texto = 'white';
var Cor_Fundo = '#008000';
} // switch (Cor)
document.getElementById(Campo).style.color = Cor_Texto;
document.getElementById(Campo).style.fontWeight = 'bold';
document.getElementById(Campo).style.backgroundColor = Cor_Fundo;
} // function TarjetaCOR_JS(Campo, Cor)
</script>";
if ({situacao_status} == 'Emprestado') {
sc_ajax_javascript("TarjetaCOR_JS('situacao_status', 'VERMELHO CLARO')");
}
if ({situacao_status} == 'Devolvido') {
sc_ajax_javascript("TarjetaCOR_JS('situacao_status', 'VERDE CLARO')");
}
```
Apague todos os dados do seu OnLoad e faça um teste para ver se a função sc_ajax_javascript,
esta funcionando, cole isso no OnLoad:
{situacao_status} = 'teste';
$_Comando_JS = "alert('Teste JS = ".{situacao_status}."')";
sc_ajax_javascript($_Comando_JS);
Aqui no meu teste veja como funciona:
Ficou assim o meu
Ok então apague tudo novamente do OnLoad e cole esse código sem mexer em nada:
echo "
<script type='text/javascript'>
function TarjetaCOR_JS(Campo, Cor) {
var Campo = 'id_sc_field_' + Campo.toLowerCase();
switch (Cor) {
case 'ROXO':
var Cor_Texto = 'white';
var Cor_Fundo = '#6500CC';
break;
case 'VERDE ESCURO':
var Cor_Texto = 'white';
var Cor_Fundo = '#003300';
break;
case 'ROSA':
var Cor_Texto = 'white';
var Cor_Fundo = '#FF00FF';
break;
case 'BRANCO':
var Cor_Texto = 'black';
var Cor_Fundo = '#FFFFFF';
break;
case 'LARANJA':
var Cor_Texto = 'white';
var Cor_Fundo = '#FF6500';
break;
case 'VERMELHO ESCURO':
var Cor_Texto = 'white';
var Cor_Fundo = '#800000';
break;
case 'VERDE CLARO':
var Cor_Texto = 'white';
var Cor_Fundo = '#008000';
break;
case 'MARROM':
var Cor_Texto = 'white';
var Cor_Fundo = '#993300';
break;
case 'CINZA':
var Cor_Texto = 'white';
var Cor_Fundo = '#808080';
break;
case 'AMARELO':
var Cor_Texto = 'black';
var Cor_Fundo = '#FFFF00';
break;
case 'PRETO':
var Cor_Texto = 'white';
var Cor_Fundo = '#000000';
break;
case 'VERMELHO CLARO':
var Cor_Texto = 'white';
var Cor_Fundo = '#FF0000';
break;
case 'BEGE':
var Cor_Texto = 'black';
var Cor_Fundo = '#FFCC99';
break;
case 'AZUL ESCURO':
var Cor_Texto = 'white';
var Cor_Fundo = '#000080';
break;
case 'AZUL CLARO':
var Cor_Texto = 'white';
var Cor_Fundo = '#3365FF';
break;
default:
// VERDE CLARO
var Cor_Texto = 'white';
var Cor_Fundo = '#008000';
} // switch (Cor)
document.getElementById(Campo).style.color = Cor_Texto;
document.getElementById(Campo).style.fontWeight = 'bold';
document.getElementById(Campo).style.backgroundColor = Cor_Fundo;
} // function TarjetaCOR_JS(Campo, Cor)
</script>";
sc_ajax_javascript("TarjetaCOR_JS('situacao_status', 'VERDE CLARO')");
if ({situacao_status} == 'Emprestado') {
sc_ajax_javascript("TarjetaCOR_JS('situacao_status', 'VERMELHO CLARO')");
}
if ({situacao_status} == 'Devolvido') {
sc_ajax_javascript("TarjetaCOR_JS('situacao_status', 'VERDE CLARO')");
}
Ficou tudo verde mesmo selecionando outro
gijunior se sabe que eu gosto de você?
No seu Texto esta escrito tudo em Maísculo DEVOLVIDO na rotina eu Coloquei Devolvido
então é só alterar o seu if na rotina para ficar igual ao Texto que você digitou no Select:
if ({situacao_status} == 'EMPRESTADO') {
sc_ajax_javascript("TarjetaCOR_JS('situacao_status', 'VERMELHO CLARO')");
}
if ({situacao_status} == 'DEVOLVIDO') {
sc_ajax_javascript("TarjetaCOR_JS('situacao_status', 'VERDE CLARO')");
}
Nossa realmente perdão não me atentei a isto. Deixa eu mudar
Fiz estas alterações e ficou do mesmo jeito.
";
sc_ajax_javascript(“TarjetaCOR_JS(‘situacao_status’, ‘VERDE CLARO’)”);
if ({situacao_status} == ‘EMPRESTADO’) {
sc_ajax_javascript(“TarjetaCOR_JS(‘situacao_status’, ‘VERMELHO CLARO’)”);
}
if ({situacao_status} == ‘DEVOLVIDO’) {
sc_ajax_javascript(“TarjetaCOR_JS(‘situacao_status’, ‘VERDE CLARO’)”);
}