2010-02-22 15 views
27

Oryginalnie wykorzystywałem dane wejś ciowe z identyfikatorem i pobieram jego wartość za pomocĘ ... metody getElementById. Obecnie gram z <td> s. Jak mogę pobrać wartości z <td>?JavaScript, otrzymujĘ ... c wartość td o nazwie id

Początkowo używałem:

<input id="hello"> 
document.getElementById("hello").value; 

Teraz chcę, aby uzyskać wartość <td>, ale nie wiem jak;

<td id="test">Chicken</td> 
<td>Cow</td> 

Edit: Jaka jest różnica między textContent, innerHTML i innerText?

Odpowiedz

65

Aby uzyskać zawartość tekstową

document.getElementById ("tdid").innerText 

lub

document.getElementById ("tdid").textContent 

var tdElem = document.getElementById ("tdid"); 
var tdText = tdElem.innerText | tdElem.textContent; 

Jeśli można użyć jQuery Następnie można użyć

$("#tdid").text(); 

aby uzyskać zawartość HTML

var tdElem = document.getElementById ("tdid"); 
var tdText = tdElem.innerHTML; 

w jQuery

$("#tdid").html(); 
+1

Interesujące. W jakich warunkach "textContent" jest lepszym wyborem? –

+1

innerText nie jest obsługiwany w FF. – rahul

+2

@Pekka 웃 'innerText' zwraca wersję tekstu podobną do [co pokazano] (http://perfectionkills.com/the-poor-misunderstood-innerText/) na ekranie (w tym nowe linie i odstępy). 'textContent' dostaje dokładnie to, co znajduje się pomiędzy znacznikiem początkowym i końcowym (w tym zakładki i spacje) z usuniętymi wszystkimi znacznikami potomnymi (mimo że ich tekst jest również dołączony). Ogólnie rzecz biorąc, zawsze powinieneś używać 'textContent', aby zapobiec problemom ze zgodnością z FF. – Trisped

8

użyć właściwości

innerHTML 

i dostępu do td użyciu getElementById() jak zawsze.

2

Jeśli przez 'wartość td' masz na myśli tekst wewnątrz td, a następnie:

document.getElementById('td-id').innerHTML 
+0

Ma ona mieć łącznik? – Strawberry

+0

@Doug Nie, to tylko przykład. Musisz umieścić tam swój identyfikator. –

0

Czy próbowałeś: getElementbyId('ID_OF_ID').innerHTML?

2

Znowu z getElementById, ale zamiast .value użyć .innerText

<td id="test">Chicken</td> 
document.getElementById('test').innerText; //the value of this will be 'Chicken' 
1

Dla wejścia muszą użyłeś value chwycić jej tekst, ale dla td, należy użyć innerHTML aby uzyskać jego html/value. Przykład:

alert(document.getElementById("td_id_here").innerHTML); 

Aby uzyskać swój tekst jednak użyć: prace

alert(document.getElementById("td_id_here").innerText); 
-1

.innerText nie robi w Firefoksie.

.innerHTML działa w obu przeglądarkach.

0

jeśli kliknę nazwę tabeli, pokazane wszystkie pola dotyczące tabeli. Zrobiłem pole do pokazania. ale muszę znać funkcję klikania.

mój kod:

$sql = "SHOW tables from database_name where tables_in_databasename not like '%tablename' and tables_in_databasename not like '%tablename%'"; 


$result=mysqli_query($cons,$sql); 

$count = 0; 

$array = array(); 

while ($row = mysqli_fetch_assoc($result)) { 

    $count++; 

    $tbody_txt .= '<tr>'; 

    foreach ($row as $key => $value) { 
     if($count == '1') { 
      $thead_txt .='<td>'.$key.'</td>'; 
     } 
     $tbody_txt .='<td>'.$value.'</td>'; 


     $array[$key][] = $value; 
    } 
}?> 
Powiązane problemy