Question

Il y a un code comme ceci:

if ( bValid ) { 
      $( this ).dialog( "close" );
$("#btnExcel").show(); }

et l'apparence .aspx comme:

  <form id="form1" runat="server">
                    <input id="inpHide" type="hidden" runat="server" />
                    <asp:Button ID="btnExcel" runat="server" Text="Excel" AccessKey="E" BorderWidth="0px"
                        OnClick="btnExcel_Click" ToolTip="Excel" Visible="false" />
                    </form>

`bValid` is some part of code

Pourquoi ce travail ne marche pas? Que peut-on faire pour travailler dehors. Pour bouton visisble?

peut être son pas accessible parce que:

var button = $('#btnExcel')[0]; 
                        alert(button);

montre: non défini

Vous cherchez de l'aide.

Était-ce utile?

La solution

Vous ne pouvez pas avoir le bouton visible = « false » sur le côté du serveur. Ce qui est dans votre page ASPX vous devez avoir visible = « true » parce que sinon le bouton n'est pas rendu au format html.

Vous pouvez définir le style attirbute (ou cssStyle attirbute) sur votre bouton style = "display: none;" puis les choses vont

<asp:Button ID="btnExcel" runat="server" Text="Excel" AccessKey="E" BorderWidth="0px"
                        OnClick="btnExcel_Click" ToolTip="Excel" Visible="true" style="display:none;" />

Autres conseils

Pouvez-vous définir l'affichage du bouton sans pareil?

C'est parce que les ID des contrôles serveur générés par ASP.Net est différent dans le navigateur. Voir la source HTML dans le navigateur, trouver l'ID de contrôle et l'utilisation correcte que dans le code jQuery. Vous pouvez également essayer la fonction ClientID de ASP.Net

Voir ce pour plus: http://forums.asp.net/p/1522697 /3664258.aspx

btnExcel sera mutilée depuis son un contrôle côté serveur.

Obtenir l'identifiant mutilée comme document.getElementByid(<%=btnExcel.ClientID%>)

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top