Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Bacsh

Text por value

Recommended Posts

Olá galera, estou com um problema no joomla mas acredito que uma solução javascript possa resolver, pesquisando pelo imaster eu achei um problema e uma solução que podem me ajudar a suprir minhas necessidades, mas depois de 1 milhão de testes não deu certo.

 

O problema: Eu tenho um artigo em joomla com campos inputs, uma ficha de serviço, com nome, endereço, telefone etc, eu preciso que quando eu for preencher os dados nos inputs esses dados fiquem salvos ao salvar o artigo, logicamente ao salvar o artigo sem uma função javascript o conteúdo dos inputs simplesmente desaparecem, não existe um form ou qualquer coisa do tipo, eu teria que achar uma função que altera o value do html dependendo do que eu digitar nos campos, achei essa função que é mais ou menos o que eu preciso:

 

<html>

<head>
<script type="text/javascript">

               function valueportext() 
               {
                 w=document.getElementById("dia").value;   
			  alert(w);                                  
               }

       </script>
</head>
<body>
<input id="dia" type="text" value="123">
<p><a href="javascript:valueportext()">Alertar o valor</a>
</p>
</body>

</html>

 

Essa função está alterando o value do input segundo o javacript, o problema é que ela não altera o value no código html do input id="dia", por mais que que o alert diga que o valor é outro no código continua sempre aparecendo value="123", eu preciso que esse valor 123 mude junto com o que eu digito, isso seria possível? Eu preciso disso para que quando eu terminar a ficha de serviço poder salvar o artigo com todos os values com o valor iguais aos que eu digitei em cada campo input, e quando eu for fazer uma nova ficha, pegar a mesma ficha já cadastrada com values modificados, alterar os dados e salvar novamente com novos values em cada input, desde já obrigado.

 

Fazendo uns testes eu consegui alterar o value com o seguinte código:

 

<html>
<head>
<title>Untitled</title>
<script type="text/javascript" language="JavaScript">
<!--
function verificabotao(botao){
if (botao == 'botao1'){
document.form1.h_1.value = '1';
}else{
document.form1.h_1.value = '2';
}
alert(document.form1.h_1.value);
}
//-->
</script>
</head>
<body>
<form name="form1">
<input id="h_1" type="hidden" name="h_1" value="1">
<input type="button" onclick="verificabotao('botao1');" value="Botão1" name="b1">
<input type="button" onclick="verificabotao('botao2');" value="Botão2" name="b2">
</form>
</body>
</html>

 

O problema é quando eu altero para o tipo text na linha:

 

<input id="h_1" type="text" name="h_1" value="1">

 

Ele simplesmente para de alterar o valor no código, só no hidden fica perfeito :cry:

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigo, com javascript você nunca vai alterar o html real.

 

Apenas o html virtual. Aquele que você consegue ver com o Firebug.

Se você apertar Ctrl+U(Exibir codigo fonte), vai estar o valor inicial, e isso não tem como você mudar, e nem precisa.

 

Apenas alterando o html virtual basta, para chegar o valor alterado no server-side.

 

O erro do teu primeiro script, é que você apenas exibe, mas não altera. O correto seria:

<script type="text/javascript">
               function valueportext() 
               {
                 document.getElementById("dia").value = 'valor alterado';   

               }
       </script>

agora sim estamos alterando. Antes você apenas exibia.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vlw Willian, isso quer dizer que mesmo eu conseguindo alterar o valor virtual, quando for salvar o artigo no joomla todos os dados serão perdidos pois ele só salva o html (valores reais), achei que tinha algum jeito de alterar o valor real com javascript, mas pelo jeito ele não é tudo aquilo que dizem...

Compartilhar este post


Link para o post
Compartilhar em outros sites

você entendeu errado oque eu disse.

 

você consegue alterar o valor virtual, e este basta. O arquivo irá receber o valor virtual.

 

 

E no seu caso, pq você não faz assim:

<input type="radio" value="1" name="h_1">
<input type="radio" value="2" name="h_1">

 

?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma coisa eu não entendi, quando eu fizer a ficha inteira no joomla e salvar ela, ela vai salvar o que você chama de valores virtuais no artigo como? Não existe form enviando para algum .php ou qualquer coisa do tipo. Poderia me explicar como esses dados ficariam salvos sem alterar o html?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Entenda o HTML virtual como oque o usuário digita.

 

O usuário digita, e não aparece no codigo HTML real. Só "na tela".

Alterações com javascript, seriam como se o proprio usuario estivesse alterando.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.