none
Problema com Painel RRS feed

  • Pergunta

  • Eu tenho uma função no meu codido behind abaixo:

    ClientScript.RegisterStartupScript(this.GetType(),"", "<script type=\"text/javascript\">desabilita()</script>");

    Essa função esta dentro da minha pagina.aspx abaixo:

    <scripttype="text/javascript">

                    function desabilita() {

                        var result = confirm("Material fora da Especificação, você quer cadastrar ?");

                        if (result) {

                            document.getElementById('MainContent_FormView1_DropDownListCODCLASSEP_DropDownListCODCLASSEP_TextBox').disabled =false;

                            document.getElementById('MainContent_FormView1_DropDownListCODCLASSEP_DropDownListCODCLASSEP_Button').disabled =false;

                            document.getElementById('MainContent_FormView1_DropDownListCODMAT_DropDownListCODMAT_TextBox').disabled =false;

                            document.getElementById('MainContent_FormView1_DropDownListCODMAT_DropDownListCODMAT_Button').disabled =false;

                            document.getElementById('MainContent_FormView1_DropDownListCODSCH_DropDownListCODSCH_TextBox').disabled =false;

                            document.getElementById('MainContent_FormView1_DropDownListCODSCH_DropDownListCODSCH_Button').disabled =false;

                        }

                        else {

                            document.getElementById('MainContent_FormView1_DropDownListCODCLASSEP_DropDownListCODCLASSEP_TextBox').disabled =true;

                            document.getElementById('MainContent_FormView1_DropDownListCODCLASSEP_DropDownListCODCLASSEP_Button').disabled =true;

                            document.getElementById('MainContent_FormView1_DropDownListCODMAT_DropDownListCODMAT_TextBox').disabled = true;

                            document.getElementById('MainContent_FormView1_DropDownListCODMAT_DropDownListCODMAT_Button').disabled =true;

                            document.getElementById('MainContent_FormView1_DropDownListCODSCH_DropDownListCODSCH_TextBox').disabled =true;

                            document.getElementById('MainContent_FormView1_DropDownListCODSCH_DropDownListCODSCH_Button').disabled =true;

                        }

                    }

                </script>

    Estava funcionando perfeitamente.

    Porem depois que eu coloquei a propriedade panel no meu formview essa função não é chamada mais.

    O que deve fazer para resolver o problema ?

    Fico no aguardo.

    Obrigado.

    quinta-feira, 12 de setembro de 2013 11:59

Respostas

  • Paulo, é isso mesmo, utilize da forma como você disse que é para funcionar. 

    Tente sempre que for chamar alguma function JS do seu servidor usar o ScriptManger, acho que seria a forma mais correta. 



    Good Luck, Fernando Mamprin

    • Sugerido como Resposta Giovani Cr quinta-feira, 19 de setembro de 2013 14:10
    • Marcado como Resposta Giovani Cr quarta-feira, 9 de outubro de 2013 15:16
    terça-feira, 17 de setembro de 2013 11:58

Todas as Respostas

  • Paulo,

    Recomendo você carregar sua página e verificar o código fonte para verificar os IDs dos seus webserver controls.


    Ricardo Minoru Makiyama



    quinta-feira, 12 de setembro de 2013 12:11
  • Paulo, tente excluir sua pagina.designer.cs e clicar com o botão direito na sua página aspx e clique em Convert to Web Aplication com isso seu designer.cs será re-criado, podendo assim resolver todos os seus problemas.

    Tente também Paulo recuperar seu ID assim no seu javaScript: 

    document.getElemnetById("<%= IdControle.ClientID %>").disabled = true;

    Espero ter ajudado.  

    Caso ainda não tenha resolvido seu problema poste o seu Html. 

    Abraço, Good Luck

    quinta-feira, 12 de setembro de 2013 12:27
  • O problema pessoal e que nem a mensagem é disparada.

    <scripttype="text/javascript">

                   function desabilita() {

                       var result = confirm("Material fora da Especificação, você quer cadastrar ?");

    Então depois que coloquei o Panel simplismente o codigo abaixo não funciona mais.

    Eu acredito que independente se os Ids foram alterados ou não pelo menos a  mensagem deveria ser disparada pois ela não tem vincula com os controles os quais eu habilito e desabilito. Esse processe e depois da mensagem.

    Se alguem puder me ajudar eu agradeço muito.

    Abaixo a função que não funciona mais depois que coloquei o Painel

    ClientScript.RegisterStartupScript(this.GetType(),"","<script type=\"text/javascript\">desabilita()</script>");

    Obrigado.

    segunda-feira, 16 de setembro de 2013 16:53
  • Para pegar seu id existe duas maneiras, no objeto formview colocar a propriedade ClientIDMode="Static" 

    document.getElementById('id do objeto') isso utilizando js nativo.

    Caso esteja utilizando jquery pode pegar desta maneira também $('tag[id$=id do objeto]').

    Espero ter ajudado, abraço!

    segunda-feira, 16 de setembro de 2013 17:35
  • Mude 

    <scripttype="text/javascript">

                   function desabilita() {

                       var result = confirm("Material fora da Especificação, você quer cadastrar ?");

    Para

    <script type="text/javascript">

         function desabilita() {

             var result = confirm("Material fora da Especificação, você quer cadastrar ?");

    </script>

    A sua aplicação está dando alguma mensagem de erro? 


    Good Luck, Fernando Mamprin

    segunda-feira, 16 de setembro de 2013 17:40
  • Meu codigo ja esta dessa forma:

    <script type="text/javascript">

         function desabilita() {

             var result = confirm("Material fora da Especificação, você quer cadastrar ?");

    </script>

    Porem não dispara nenhuma menssagem e tambem não desabilita ou habilita os controles.

    Lembrando mais uma vez que isso passou a acontecer depois que eu coloquei a proprieade panel no meu formview.

    Alguem pode me ajudar ?

    Desde ja agradeço.

    Obrigado.

    terça-feira, 17 de setembro de 2013 10:31
  • Eu estava analisando as minhas menssagens que ja tenho dentro do meu formview dentro do Painel

    E elas funcionam, porem elas são simples, são apenas alertas.

    E eu notei que elas tem o ScripManager, então eu acredito que para funcionar dentro do Painel eu teria de adaptar a minha mensagem que chama o javascript junto com o ScriptManager.

    ScriptManager.RegisterClientScriptBlock(this, GetType(), "myalert", "alert('Cadastro de Soldadores duplicado');", true);
    • Sugerido como Resposta Giovani Cr quinta-feira, 19 de setembro de 2013 14:10
    terça-feira, 17 de setembro de 2013 11:20
  • Paulo, é isso mesmo, utilize da forma como você disse que é para funcionar. 

    Tente sempre que for chamar alguma function JS do seu servidor usar o ScriptManger, acho que seria a forma mais correta. 



    Good Luck, Fernando Mamprin

    • Sugerido como Resposta Giovani Cr quinta-feira, 19 de setembro de 2013 14:10
    • Marcado como Resposta Giovani Cr quarta-feira, 9 de outubro de 2013 15:16
    terça-feira, 17 de setembro de 2013 11:58