2016-09-27 1 views
0

Kann den Knopfwert in jquery nicht erhalten.Wie man Knopfwert in jquery erhält

<head> 
    <script   
src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"> 
</script> 
</head> 

<body> 
    <p> This is para </p> 
    <button> Hide </button> 
    <script> 
      function handle(){ 
        value = $("button").attr("value"); 
        alert(value); 
      } 

      $(function(){ 
        $("button").click(handle); 
      }); 
    </script> 

Was ist der Fehler auf dem obigen Code. Ich muss das Ereignis, das durch die Schaltfläche ausgelöst wird, anstelle von "this" behandeln. Ich habe bereits gesehen, wie ich es mit "diesem" lösen kann. Also ohne "dies", wie das Ereignis zu behandeln ist

+2

Der 'Button' hat kein' value' Attribut ... –

Antwort

0

Verwenden Sie die jQuery .text() Methode mit dem button Element, um den darin enthaltenen Textwert zu greifen. (Zum Beispiel der Text zwischen den offenen <button> und schließen </button>-Tags.)

Was Sie versuchen, nicht funktioniert, weil das button Element hat keine value Attribut abzurufen.

Get Text Beispiel:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.0/jquery.min.js"></script> 
<p> This is para </p> 

<button> Hide </button> 

<script> 
    function handle() { 
     var buttonText = $("button").text(); 

     // Whatever you need to do with the text. 
     alert(buttonText); 
    } 

    $(function(){ 
     $("button").click(handle); 
    }); 
</script> 

Working code pen

Umgekehrt können Sie auch gesetzt die button ‚s Textwert durch die gleiche Methode mit dem gewünschten Wert zu übergeben. Beispiel

Set Text:

... 
    $("button").text("My New Text"); 
... 

Dokumentation:jQuery .text() Method

1

Wenn Sie den Text in Ihrem Knopf erhalten möchten nur verwenden:

value = $("button").text() statt value = $("button").attr("value")

Ihre Schaltfläche verfügt nicht über das value Attribut, von dem Sie die Daten abrufen können.

So sollten Sie .text() Methode verwenden, statt .attr()

<body> 

    <p> This is para </p> 
    <button> Hide </button> 

<script src="https://code.jquery.com/jquery-3.1.0.js"></script> 

<script> 
    function handle(){ 
    value = $("button").text(); 
    alert(value); 
    } 

    $(function(){ 
    $("button").click(handle); 
    }); 
</script> 

</body> 

Working example in JSBin

0

Button-Element hat keinen Wert Attribut zugeordnet ist, so müssen Sie versuchen, den Text innerhalb des Tags erregenden <button></button>

Sie verwenden können, jquery's text() Methode, um den Text als

zu greifen 10
Verwandte Themen