2016-12-16 9 views
-3

JavaScriptを使用してtd要素のコンテンツ(テキスト)をフォーマットしようとしています。ただし、要素にはgetElementbyIDを使用するIDプロパティはなく、getElementbyClassを使用するために一意でないClassプロパティを持ちます。フォーマットするためのJavaScript​​要素

私はHTML部分を制御することはできません。クラス名を変更したり、IDプロパティを組み込んでいます。定数はすべて、<td>内のテキストです。

フォーマットするスクリプトをどのように書くことができますか(たとえば、テキストを太字にするなど)

私はJQueryを使用できないことに注意してください。

<table width="100%" class="ms-formtable" style="margin-top: 8px;" border="0" cellspacing="0" cellpadding="0"> 
 
    <tbody> 
 
    <tr> 
 
     <td width="90%" class="ms-formlabel" valign="top"> 
 
     General 
 
     </td> 
 
    </tr> 
 
    </tbody> 
 
</table>

+0

でそれのスタイルを変更することができます> td.ms-formlabel'? – kukkuz

+0

これはコード上ではっきりしていませんでした。そのtbody> tr>の下に複数のtd.ms-formlabelがあります。 – tempidope

+0

したがって、関連する要素をテキストコンテンツで識別する必要がありますか?あなたは見ましたか?http://stackoverflow.com/questions/3813294/how-to-get-element-by-innertext? –

答えて

-1

あなたはtable.ms-formtable>のtbody> trは `てみてください最初の要素を選択し、.style

var elem = document.querySelectorAll('td.ms-formlabel')[0]; 
 
elem.style.fontWeight = "900";
<table width="100%" class="ms-formtable" style="margin-top: 8px;" border="0" cellspacing="0" cellpadding="0"> \t 
 
     <tbody><tr> 
 
     <td width="90%" class="ms-formlabel" valign="top"> 
 
     General 
 
     </td> 
 
     </tr> 
 
     </tbody></table>

+0

これは、指定されたクラスを持つ要素が、そのクラス名を持つ最初の*および*唯一の要素である場合にのみ機能します。その要素が必ずしも保証されるとは限らない一意でないクラス名を持っていることが明らかになりました。確かにこの質問は簡略化されていない[mcve]のメリットが大きいでしょう。 –

関連する問題