2010-02-22 14 views
27

Originariamente stavo usando l'input con un id e ne ho preso il valore con getElementById. Attualmente sto giocando con <td> s. Come posso prendere i valori dello <td>?JavaScript, ottenendo il valore di un td con nome id

Inizialmente ho usato:

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

Ora voglio ottenere il valore di <td>, ma io non so come;

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

Edit: Qual è la differenza tra textContent, innerHTML, e innerText?

risposta

65

per ottenere il contenuto del testo

document.getElementById ("tdid").innerText 

o

document.getElementById ("tdid").textContent 

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

Se è possibile utilizzare jQuery quindi è possibile utilizzare

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

Per ottenere il contenuto HTML

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

in jQuery

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

Interessante. In quali condizioni è 'textContent' la scelta migliore? –

+1

innerText non è supportato in FF. – rahul

+2

@Pekka 웃 'innerText' restituisce una versione del testo simile a [cosa mostrerebbe] (http://perfectionkills.com/the-poo-misunderstood-innerText/) sullo schermo (incluse nuove righe e spaziatura). 'textContent' ottiene esattamente ciò che si trova tra il tag iniziale e quello finale (comprese le schede e gli spazi) con tutti i tag secondari rimossi (anche se il loro testo è anche incluso). In generale, dovresti sempre usare 'textContent' per evitare problemi di compatibilità con FF. – Trisped

8

utilizzare la proprietà

innerHTML 

e accedere alla td utilizzando getElementById() come sempre.

2

Se da 'valore td' si intende il testo all'interno di TD, quindi:

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

E 'dovrebbe avere un trattino? – Strawberry

+0

@Doug No, è solo un esempio. Devi inserire il tuo ID qui. –

0

Hai provato: getElementbyId('ID_OF_ID').innerHTML?

2

Sempre con getElementById, ma invece .value, utilizzare .innerText

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

Per l'ingresso è necessario aver utilizzato value per afferrare il suo testo, ma per TD, si dovrebbe usare innerHTML per ottenere il suo html/valore. Esempio:

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

per ottenere il suo testo, però, utilizzare: il lavoro

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

.innerText pretende molto in Firefox.

.innerHTML funziona in entrambi i browser.

0

se faccio clic sul nome della tabella, vengono mostrati tutti i campi relativi alla tabella. Ho fatto campo da tavolo per mostrare. ma ho bisogno di sapere la funzione click.

My Code:

$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; 
    } 
}?> 
Problemi correlati