Fórum Inserir valor em textbox sem runat= server #450933

05/08/2013

0

boa tarde, estou fazendo uma função para quando a pessoa colocar 1 valor, ele gere com innerhtml os textbox.

porém na hora de editar gostaria que se a pessoa colocasse + ou - campos viessem os valores colocados anteriormente.

como faço pra setar valor sem o runat="server" ja que ele não enxega pois é dinâmico.

abs.

segue o código
for (int i = 1; i <= Curso.QuantidadeApresentacao; i++)
                        {

                            StringBuilder str = new StringBuilder();
                            str.Append("<ul class='ulCadastro'>");
                            str.Append("<li>");
                            str.Append("Dia " + i + ": <input type='text' class='data' ID='txtDia" + i + "' width='20' name='txtDia" + i + "' runat='server'>");
                            str.Append("</li>");
                            str.Append("<li>");
                            str.Append("Horário " + i + ": <input type='text' class='horario' ID='txtHorario" + i + "' width='20' name='txtHorario" + i + "' runat='server'>");
                            str.Append("</li>");
                            str.Append("</ul>");


                            addCampos.InnerHtml += str.ToString();
                        }
Fabio Vianna

Fabio Vianna

Responder

Posts

05/08/2013

Joel Rodrigues

Aí você vai ter de usar JavaScript (jQuery para ser mais rápido).
Exemplo:
$("#meuCampo").val("Teste...");
Responder

Gostei + 0

05/08/2013

Fabio Vianna

mas eu queria conseguir fazer pelo próprio code behind....

até pensei em fazer um javascript por ele... mas axei que teria uma forma melhor de se fazer.
Responder

Gostei + 0

05/08/2013

Joel Rodrigues

Bom, aí seria meio estranho. Se você vai acessar pelo code behind, por que não marcar com runat=server? Já que vai ter processamento server-side mesmo.
Você pode tentar executar o código JavaScript usando RegisterClientScriptBlock, mas aí só tentando pra saber se dá certo.
Responder

Gostei + 0

06/08/2013

Fabio Vianna

mas ai q ta.... qnd ele entra na pagina ele monta com innerhtml... mesmo colocando runat server o codebehind não entende que existe um campo na tela.

se a pessoa na edição não pudesse trocar a quantidade era tranquilo...pq ai já montaria o innerhtml atribuindo o value...

mas como ela pode mudar... pensei em montar a tela primeiro... e depois atribuir os valores.
Responder

Gostei + 0

14/08/2013

Gabriel Simas

mas ai q ta.... qnd ele entra na pagina ele monta com innerhtml... mesmo colocando runat server o codebehind não entende que existe um campo na tela.

se a pessoa na edição não pudesse trocar a quantidade era tranquilo...pq ai já montaria o innerhtml atribuindo o value...

mas como ela pode mudar... pensei em montar a tela primeiro... e depois atribuir os valores.


Fabio,

Diante disto, você vai precisar acessar a Classe que criar o textBox utilizando a Classe TextBox, segue um link que pode ser bastante útil a você:

[url]http://www.aspsnippets.com/articles/creating-dynamic-textbox-controls-in-asp.net.aspx[/url]

Forte Abraço.
Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar