como poderia passar um json no value, pois queria poder acessar mais do que a propriedade id do objeto.
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
como poderia passar um json no value, pois queria poder acessar mais do que a propriedade id do objeto.
Oi Felipe, tudo bem ?
Pode dar um exemplo do que você quer ?
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title></title>
</head>
<body>
<form action="/promocoes" method="post">
<div>
<input type="text" name="mensagem"/>
</div>
<div>
<select name="livro[id]">
<% for(var i=0; i<lista.length; i++) {%>
<option value="<%=lista[i]%>" ><%=lista[i].titulo%></option>
<% } %>
</select>
</div>
<input type="submit" value="Promoção relâmpago"/>
</form>
</body>
</html>
<option value="<%=lista[i]%>" >
queria passar o livro através da tag value, para que seja possível reutiliza-lo nas informações do alert que será impresso pelo socketIO.
Felipe,
Infelizmente para esse caso não é possível passar um objeto para dentro desse cara, o que você pode fazer é passar um texto que fique dentro dessa opção.
TextoQue talvez possa ficar mais dinamico, mas não sei se isso vai te ajudar :(
Como eu poderia fazer pra passar mais do que uma informação para o servidor ? Por exemplo, se eu tivesse um chat onde eu tivesse que enviar ao servidor a mensagem que o usuário escreveu e o nome dele.
Fala ai Felipe, nesse seu último exemplo você teria que ter dois inputs dentro do formulário, um para o nome e outro para a mensagem.
Complementando: Sempre que um formulário é submetido, o valor de todos os inputs, selects ou textarea são enviados para o servidor na requisição.
Sendo assim você teria algo parecido com:
<form action="..." method="post">
<label for="nome">Nome</label>
<input id="nome" name="nome" type="text">
<label for="mensagem">Mensagem</label>
<textarea id="mensagem" nome="mensagem"></textarea>
</form>
Espero ter ajudado