Je veux définir du texte sur étiqueter avec jQuery après avoir cliqué sur le bouton. J'ai écrit du code et cela fonctionne, mais après avoir défini du texte dans mon label, étiquette renvoie son ancien état. Voici mon code:
<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="WebForm2.aspx.cs" Inherits="DynamicWebApplication.WebForm2" %> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head runat="server"> <title></title> <script src="Scripts/jquery-1.4.1.min.js" type="text/javascript"></script> <script type="text/javascript"> function f() { $('#<%=Label1.ClientID%>').html("hello"); } </script> </head> <body> <form id="form1" runat="server"> <div> <asp:Label ID="Label1" runat="server"></asp:Label> <p></p> <asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="f();"/> </div> </form> </body> </html>
5 Réponses :
Vous pouvez utiliser la méthode texte code> pour définir le texte
Votre page post-elle sur le bouton Server sur le bouton Cliquez?
Dans ce cas, vous devriez renvoyer false code> de la fonction pour arrêter la page à soumettre.
Non, vous pouvez voir tout mon code. Je n'ai rien écrit dans le fichier .CSS
Si votre bouton provoque un post-pack, les modifications seront perdues après la recharge de la page. Essayez ceci -
Quel comportement voyez-vous? Est-ce que l'étiquette change alors la page actualisée et le changement est parti?
Les changements d'étiquette et le changement est parti sans rafraîchir.
Désolé, tu as raison. L'étiquette change alors la page actualisée et le changement a disparu
Si vous changez 'OnClientClick = "F ();"' être "oneClientClick =" f (); renvoyer faux; "'Est-ce que cela fait de la différence? Avez-vous d'autres fonctions JQuery liées à la page?
Oui - ça arrête la page en train de poser. Votre code JQuery mettait la mise à jour de l'étiquette, mais en cliquant sur le bouton, la page post la liste des données de formulaire à lui-même afin que votre changement de jQuery ait été perdu.
Les étiquettes ne maintiennent pas la vieilleté. Le serveur ne postera pas ces informations sur le serveur. Vous pouvez essayer explicitement permettre la visualisation de votre étiquette, mais si cela ne fonctionne pas, vous devrez stocker cette valeur dans un champ masqué.
<asp:Label ID="Label1" runat="server" EnableViewState="true"></asp:Label>
Pas clair, qu'est-ce que c'est pour stocker cette valeur dans un champ caché. Pouvez-vous écrire du code?
J'ai déjà trouvé une solution. 'OnclientClick = "f ();"' être "oneClientClick =" f (); renvoyer false;
Ou en utilisant la textbox Control Readonly?
activerviewstate = "vrai" code> ne fonctionne pas
<asp:Button ID="Button1" runat="server" Text="Button" /> $(document).ready(function(){ $('#<%=Button1.ClientID%>').click(function(){ $('#<%=Label1.ClientID%>').html("hello"); return false; }); });
Je voudrais utiliser ceci,