none
Javascript com textbox visible = true e outras duvidas RRS feed

  • Pergunta

  • E ai pessoal !

    1. Tenho uma função javascript que recebe o valor de um textbox funciona perfeitamente porem quando coloco o textBox  com visible= True o javascript não receber o valor, o que posso fazer para contar isso.

    2. No meu GridView tem um campo que passa um valor para um textbox, uso o evento SelectedIndexChenged  e o  comando asp:CommandField ShowSelectButton="True" porem ele esta dando um refresh e voltando no inicio na pagina, utilizei o UpdatePanel mas mesmo assim continuou fazendo isto e também quando esse campo esta com visible= true ele não passa nada.

    3. Quando faço um insert gostaria que a pagina continuasse na mesma div seleciona, uso UpdatePanel com trigger para fazer a ação do insert.  

    Caso fique confuso a questão das três duvidas posso cria um tópico para cada uma. Mas vou aguarda o feedback de vcs para isso.

     

    quinta-feira, 27 de outubro de 2016 12:39

Respostas

  • Pessoal deu certo conseguir fazendo desta maneira.

     

     <asp:UpdatePanel ID="UpdatePanel5" runat="server" ClientIDMode="Inherit" UpdateMode="Conditional" EnableViewState="True" RenderMode="Block" ViewStateMode="Inherit" ChildrenAsTriggers="True" ValidateRequestMode="Inherit">

    <Triggers> <asp:AsyncPostBackTrigger ControlID="GridView3" /> </Triggers>

    Acho que vai ajudar muita gente, por que na internet não achei nada a respeito. Obrigado a todos.


    • Marcado como Resposta Renato B Lima sexta-feira, 28 de outubro de 2016 16:21
    sexta-feira, 28 de outubro de 2016 16:21

Todas as Respostas

  • Olá,

    No item 1 é quando você coloca o textbox para True ou para False que o JS não recebe o valor?

    Pelo visto você está usando Web Forms. Esse é um dos problemas dele, a integração com o front-end, principalmente com javascript.

    Verifique se no javascript você não está tentando pegar o valor baseado no ID da textbox ou algo do gênero. (Isso é um problema recorrente, já que os IDs dos elementos do asp.net são dinâmicos e podem mudar por qualquer mudança na estrutura da página).


    Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta!

    André Secco
    Microsoft MSP & MSDN Tech Advisor
    Blog: http://andresecco.com.br
    GitHub: http://github.com/andreluizsecco
    Twitter: @andre_secco

    quinta-feira, 27 de outubro de 2016 13:07
  • Bom dia André. 

    Isto estou usando um Web Form. Quando coloco false ele funciona mas true não.

    O ID vem de um GridView que quando selecionado ele passa para o TextBox e a função javascript pega este valor.

    quinta-feira, 27 de outubro de 2016 13:28
  • Pessoal 

    1. Item eu já resolvi com o próprio javascript, em vez de dar visble= true no C# eu oculto com o javascript funcionou que uma beleza.

    Falta os outros itens.


    • Editado Renato B Lima quinta-feira, 27 de outubro de 2016 16:11
    quinta-feira, 27 de outubro de 2016 14:53
  • Renato, Tenta seguir esse exemplo para o problema do UpdatePanel

    http://stackoverflow.com/questions/2545508/how-do-i-force-full-post-back-from-a-button-within-an-updatepanel


    Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta!

    André Secco
    Microsoft MSP & MSDN Tech Advisor
    Blog: http://andresecco.com.br
    GitHub: http://github.com/andreluizsecco
    Twitter: @andre_secco

    quinta-feira, 27 de outubro de 2016 15:51
  • André, meu código esta praticamente igual do link que vc me passou e mesmo assim ele atualiza a pagina.

    Eu acredito que seja algum problema no  commadField ShowSelectButton.

    Segue eu código:

       <asp:UpdatePanel ID="UpdatePanel5" UpdateMode="Conditional" runat="server">
                        <ContentTemplate>
                            <asp:GridView ID="GridView3" runat="server" AutoGenerateColumns="False" CellPadding="4" ForeColor="#333333" GridLines="None" AllowPaging="True" OnPageIndexChanging="GridView3_PageIndexChanging" OnSelectedIndexChanged="GridView3_SelectedIndexChanged" OnRowEditing="GridView3_RowEditing">
                                <AlternatingRowStyle BackColor="White" ForeColor="#284775" />
                                <Columns>
                                    <asp:BoundField DataField="id" HeaderText="id" InsertVisible="False" ReadOnly="True" SortExpression="id" />
                                    <asp:BoundField DataField="vencimento" HeaderText="Vencimento" SortExpression="vencimento" DataFormatString="{0:d}"></asp:BoundField>
                                    <asp:BoundField DataField="observacao" HeaderText="Observação" SortExpression="observacao"></asp:BoundField>
                                    <asp:BoundField DataField="valor_pago" HeaderText="Valor" SortExpression="valor_pago"></asp:BoundField>
                                    <asp:BoundField DataField="valor" HeaderText=" Valor Pago" SortExpression="valor"></asp:BoundField>
                                    <asp:CheckBoxField DataField="quitado" HeaderText="Quitado" SortExpression="quitado"></asp:CheckBoxField>
                                    <asp:CommandField ShowSelectButton="True" SelectText="<img src='images/icon/Misc-Edit-icon.png' title='Editar'/>"   />
                                    <asp:CommandField ShowDeleteButton="True" DeleteText="<img src='images/icon/Trash-can-icon.png' title='Excluir' />"></asp:CommandField>
                                </Columns>
    
                                <EditRowStyle BackColor="#999999" />
                                <FooterStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
                                <HeaderStyle BackColor="#5D7B9D" Font-Bold="True" ForeColor="White" />
                                <PagerStyle BackColor="#284775" ForeColor="White" HorizontalAlign="Center" />
                                <RowStyle BackColor="#F7F6F3" ForeColor="#333333" />
                                <SelectedRowStyle BackColor="#E2DED6" Font-Bold="True" ForeColor="#333333" />
                                <SortedAscendingCellStyle BackColor="#E9E7E2" />
                                <SortedAscendingHeaderStyle BackColor="#506C8C" />
                                <SortedDescendingCellStyle BackColor="#FFFDF8" />
                                <SortedDescendingHeaderStyle BackColor="#6F8DAE" />
                            </asp:GridView>
                                
                             </ContentTemplate>
    
                            <Triggers>
                                <asp:PostBackTrigger ControlID="GridView3" />
                            </Triggers>
                        </asp:UpdatePanel>


    • Editado Renato B Lima quinta-feira, 27 de outubro de 2016 17:44
    quinta-feira, 27 de outubro de 2016 17:42
  • Renato,

    Vamos fazer um teste, tenta tirar isso:

    UpdateMode="Conditional" 

    E isso:

    <Triggers>
       <asp:PostBackTrigger ControlID="GridView3" />
    </Triggers>

    Acredito que para esses casos, utilizando GridView, o UpdatePanel fica meio perdido nas atualizações


    Se a resposta for relevante ou tenha resolvido seu problema, marque como útil/resposta!

    André Secco
    Microsoft MSP & MSDN Tech Advisor
    Blog: http://andresecco.com.br
    GitHub: http://github.com/andreluizsecco
    Twitter: @andre_secco

    quinta-feira, 27 de outubro de 2016 17:55
  • André, era o jeito que eu estava tentando antes. 

    Mas eu tirei de novo e mesmo assim ele continua atualizando a pagina.

    quinta-feira, 27 de outubro de 2016 18:02
  • Pessoal deu certo conseguir fazendo desta maneira.

     

     <asp:UpdatePanel ID="UpdatePanel5" runat="server" ClientIDMode="Inherit" UpdateMode="Conditional" EnableViewState="True" RenderMode="Block" ViewStateMode="Inherit" ChildrenAsTriggers="True" ValidateRequestMode="Inherit">

    <Triggers> <asp:AsyncPostBackTrigger ControlID="GridView3" /> </Triggers>

    Acho que vai ajudar muita gente, por que na internet não achei nada a respeito. Obrigado a todos.


    • Marcado como Resposta Renato B Lima sexta-feira, 28 de outubro de 2016 16:21
    sexta-feira, 28 de outubro de 2016 16:21