2013-07-30 24 views
11

私は、HTMLは次のようにレンダリングされるHTMLページ、持っている:今、私は何をしたいのかラベルテキスト値フォームをHTMLページから取得する方法は?

<div id = 'mViB'> 
<table id = 'myTable'> 
<tbody> 
<tr> ...</tr> 
<tr>...</tr> 
<tr> ...</tr> 
<tr>....</tr> 
<tr> 
<td> 
<label id="*spaM4" for="*zigField4"> 
All hell. 
<span class = 'msde32'></span> 
</label> 
</td> 
</tr> 
</tbody> 
</table> 
</div> 

は、ラベルのテキストを取得している「すべての地獄を。」ラベルから。

この目的のために私はdocument.getElementById('*spaM4').textdocument.getElementById('*spaM4').valueの両方を使用しましたが、偶然にそれらのどれも働いていませんでした。

私はdocument.getElementById('*spaM4').innerHTMLを使用しましたが、span classも返しますが、テキストを取得したいだけです。

要素IDのアスタリスクは第三者コードであり、変更できません。

ラベルテキストを取得する方法は他にもありますか?

+2

そのdocument.getElementById( 'spaM4')。innerHTML; id * from id – PravinS

+2

IDでアスタリスクを使用しないでください。 –

+0

@DavidJashi:問題なく使用できます。分類とインデックス作成にはアスタリスクが使用されることがあります。 –

答えて

23

これを試してみてください:

document.getElementById('*spaM4').textContent 

をあなたは、あなたが取得する.innerText

+0

'textContent'は私にとって仕事をします、+1して受け入れます。 –

3

使用innerText/textContent

var el = document.getElementById('*spaM4'); 
    console.log(el.innerText || el.textContent); 

フィドル:http://jsfiddle.net/NeTgC/2/

+1

'innerText'は普遍的に互換性がありません。 – Tomalak

+0

ありがとう、そして役に立つフィドル+1。 –

+0

@TheDarkKnightようこそ! – Cherniv

9

これは、あなたが、プレーンJSに欲しいものを得るでしょう。

var el = document.getElementById('*spaM4'); 
text = (el.innerText || el.textContent); 

FIDDLE

+0

'/\s{2,}/g.replace(text、 '')'を追加して、空白を正規化することができます。 – Tomalak

+1

ありがとうございます。'innerText'はmozillaでは動作しませんでしたが、' textContent'は動作しました。 +1 –

+0

@TheDarkKnight、素晴らしい。それは役に立ちました。 – Sergio

0
var lbltext = document.getElementById('*spaM4').innerHTML 
0

最善の方法を使用する必要が< IE9をターゲットにする必要がある場合01からのテキスト値要素は以下の通りです。 <label for='phone'>Phone number</label> <input type='text' id='phone' placeholder='Mobile or landline numbers...'>

テキスト値を抽出します。このコードは「電話番号:下記の構造を想定し

function id(e){return document.getElementById(e)} 

:あなたは要素のidを取得する場合は

頻繁にはidを返す関数を持っているのがベストです'から<label>: var text = id('phone').previousElementSibling.innerHTML;

このコードはすべてのブラウザで機能し、各<label>要素に固有のIDを付ける必要はありません。

+0

'previousElementSibling.textContent 'をFirefoxを含む最新のブラウザとして使用して、この形式を認識することもできます。 – BlackMagic

関連する問題