web-dev-qa-db-fra.com

Obtenir le texte de l'étiquette avec jquery

Je veux faire une chose très simple, mais je ne réussis pas. J'ai le bouton et l'étiquette sur ma page asp.net et je veux obtenir le texte de l'étiquette après avoir cliqué sur le bouton. 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 type="text/javascript">
        function f() 
        {
            var g = $('<%=Label1.ClientID%>').val();  // Also I tried .text() and .html()
            alert(g);
        }
    </script>
</head>

<body>
    <form id="form1" runat="server">
        <div>
            <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
            <p></p>
            <asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="f();"/>
        </div>
    </form>
</body>

20
Rougher

essaye ça:

var g = $('#<%=Label1.ClientID%>').val();

ou ca:

var g = $('#<%=Label1.ClientID%>').html();

vous manquez le #

ajoutez ceci dans la section head: 

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
30
kleinohad

Essaye ça

var g = $('#<%=Label1.ClientID%>').text();
15
ShankarSangoli

Essayez d'utiliser la fonction html ().

$('#<%=Label1.ClientID%>').html();

Vous manquez également le # pour en faire un identifiant que vous recherchez. Sans le #, il recherche un type de tag.

3
beatgammit

Essayer:

<%=this.Label1.Text%>
1
ANeme

essayez document.getElementById ('<% = Label1.ClientID%>'). text ou innerHTML Chargez autrement l'écriture JQUERY AND et mettez votre code tel quel ....

1
Rajnikant

pour la ligne que vous avez écrite

var g = $ ('<% = Label1.ClientID%>'). val (); // J'ai aussi essayé .text () et .html ()

vous avez manqué d'ajouter #. ça devrait être comme ça

var g = $ ('# <% = Label1.ClientID%>'). text (); 

aussi je ne préfère pas utiliser cette méthode

en effet, si vous appelez un contrôle dans un maître ou une page maître imbriquée ou si vous appelez un contrôle dans une page à partir du maître. Contrôle également en répéteur. quel que soit le MVC. cela causera des problèmes.

vous devez TOUJOURS appeler directement l'ID du contrôle. comme ça

$ ('# ControlID') 

c'est simple et clair . mais n'oubliez pas de définir 

ClientIDMode = "Static" 

dans vos contrôles pour rester avec le même nom d'ID après le rendu. En effet, ASP.net modifiera le nom de l'identifiant dans le fichier rendu HTML dans certains contextes i.e. la page est pour la page maître le nom du contrôle sera ConetentPlaceholderName_controlID 

J'espère que ça efface la question Bonne chance

0
Omar Kamel