Retornar dados de um objeto

1 resposta
yschmitzz

é o seguinte, estou iniciando em javascript, fui digitar alguns codigos e bateu uma duvida
fiz um algoritimo que ccria um objeto(uma pessoa), o nome do objeto é o nome da pessoa e depois retorno os valores dela atravez do nome
algo mais simples possivel
por exemplo
se eu quiser criar o objeto "Maria"
preencheria o form com o nome "maria" e aconteceria isso:
var Maria = new pessoa("Maria", 18);
pra depois quando eu quiser pegar as informaçoes dela, eu so utilizar o
for (x in Maria);
mas sei q nao tem como fazer dessa forma, alguem sabe um geito parecido??
mas sei que o algoritimo esta errado, alguem tem uma solução parecida
fiz da seguinte forma

<html>
<head>
<script>

var x = 0;
function pessoa(name, idade) {
this.idade = idade;
this.name = name;

function info(nomeObj) {
var y;
var info;

for (x in nomeObj) {
info += nomeObj[y];
}
document.getElementById('in').innerHTML=info;
}

}
function creat(nomeObj,id) { <!-- sei q isso nao tem nada a ver, nao tem como eu escolher o nome da variavel dentro da pagina da web ,mas é +/- a intenção -->
x++;
nomeObj = new pessoa(nomeObj,id); <!-- sei q isso nao tem nada a ver, nao tem como eu escolher o nome da variavel dentro da pagina da web ,mas é +/- a intenção -->
document.getElementById(x).innerHTML=nomeObj.name+" tem "+nomeObj.idade;
}





</script>
</head>
<body>
Nome:<input type="text" id="texto"/>
Idade:<input type="text" id="idade"/>

<a onClick="creat(document.getElementById('texto').value, document.getElementById('idade').value)">lol</a><br />
<p id="1">Pessoas:</p>
<p id="2"></p>

<p id="3"></p>
<p id="4"></p>
<p id="5"></p>

<p id="6"></p>

<input type="text" id="pessoa"/>

<a onclick="nomeObj.info()">Informações pessoais</a><br />
<p id="in">Informacoes pessoais</p>




</body>
</html>

1 Resposta

dobau

Veja esse plugin http://bitovi.com/blog/2010/06/convert-form-elements-to-javascript-object-literals-with-jquery-formparams-plugin.html acredito que ele faz o que você quer.

Criado 28 de dezembro de 2012
Ultima resposta 28 de dez. de 2012
Respostas 1
Participantes 2