Quiero hacer cosa muy simple, pero no tengo éxito. He botón y una etiqueta en mi asp.net página y quiero obtener el texto de la etiqueta después de hacer clic en el botón. Aquí está mi código:

<%@ 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>

  • Se puede dar el ejemplo de cómo usarlo?
  • No veo el script jQuery cargado en cualquier parte del código. Tal vez ese es el problema?
InformationsquelleAutor Rougher | 2011-08-07

8 Comentarios

  1. 32

    intente esto:

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

    o este:

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

    le falta el #

    agregar esto en la sección de la cabeza:

    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js"></script>
    • Con # también no funciona. He intentado también
    • usted necesita agregar el script jquery incluido mirar editado mi respuesta
  2. 3

    Trate de usar el html() función.

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

    Está también falta la # para hacer un ID que estás buscando. Sin #, se busca un tipo de etiqueta.

    • var g = $(‘<%=Label1.ClientID%>’).val(); // También he intentado .text() y .html()
  3. 1

    trate de documentos.getElementById(‘<%=Label1.ClientID%>’).texto o innerHTML de lo CONTRARIO, la CARGA del SCRIPT JQUERY Y poner el código como es….

  4. 1

    Ninguna solución aquí trabajó para mí. En su lugar he añadido una clase a la etiqueta, y fue capaz de seleccionar de esa manera.

    <asp:Label ID="Label1" CssClass="myLabel1Class" runat="server" Text="Label"></asp:Label>

    $(".myLabel1Class").val()

    Y, como se ha mencionado por otros, asegúrese de que usted tiene su jquery cargado.

    • Tengo esto para que funcionen con $(«.myLabel1Class»).html() Gracias Dr Jones!
  5. 0

    para la línea que escribió

    var g = $(‘<%=Label1.ClientID%>’).val(); //También he intentado .text() y .html()

    te faltó añadir #. debe ser como esto

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

    además, yo no prefiero usar este método

    que es porque si se llama a un control en maestra o maestro anidado página o si se llama a un control en la página de la maestra. También los controles en el Repetidor. independientemente de la MVC. esto causará problemas.

    SIEMPRE debe llamar el ID del control directamente. como este

    $(‘#ControlID’)

    esto es simple y claro.
    pero no se olvide de establecer

    ClientIDMode=»Static»

    en los controles para permanecer con el mismo ID nombre después de render. eso es porque ASP.net se modifica el nombre de IDENTIFICACIÓN en HTML archivo procesado en algunos contextos
    es decir, la página es para la página principal el nombre del control será ConetentPlaceholderName_controlId

    Espero que se aclare la cuestión
    Buena Suerte

  6. -1

    Es simple, establecer un valor específico para esa etiqueta (XXXXXXX por ejemplo) y ejecutarlo, abra el código fuente html de salida (en el navegador) y buscar XXXXXXX, verá algo como esto <span id="mylabel">XXXXXX</span> es lo que usted desea, el ID de <span> (creo que es por lo general el mismo como el nombre de la Etiqueta en el código asp) ahora usted puede obtener su valor por innerHTML o de un método de JQuery

    • $(‘.mylabel’).html(); JQuery
    • Que seleccione una clase denominada mylabel, no un ID.
    • tal vez esto $(‘mylabel’).html(); yo no estoy familiarizado con JQ
    • $('#mylabel').html(), como de los otros puestos.

Dejar respuesta

Please enter your comment!
Please enter your name here