3

HTML:

<td class="tabletd"> text one </td><br>
<td class="tabletd" id="tdSecond"> this is next td</td>
<button onclick="myFunc()">click</button>

JS:

function myFunc() {
    var second    = document.getElementById('tdSecond').innerHTML;
    //var second2 = document.getElementsByTagName('td')[1]; //gives error undefined
    alert(second);
}

私はこの仕事をすることができません。cssの効果がない場合でも、JSFiddleを参照してください。ただし、親なし
で使用すると、javascriptとcssの両方が正常に機能します。 また、javascriptとcssはカスタムタグで正常に機能します。例:-<li><ul>
<ddd> text </ddd>

<td>では、親なしで使用すると、cssとjavascriptの両方でエラーが発生するのはなぜ<table>ですか?

4

3 に答える 3

5

<li>これは、アイテムがhttp://www.whatwg.org/specs/web-apps/current-work/multipage/grouping-content.html#the-li-elementなしである理由を説明します。<ul>

li要素はリストアイテムを表します。親要素がol、ul、またはmenu要素である場合、その要素は、それらの要素に対して定義されているように、親要素のリストの項目です。それ以外の場合、リストアイテムには、他のli要素との定義されたリスト関連の関係はありません。

親要素がol要素の場合、li要素は順序値を持ちます。

<ul>同様<li>のアイテムをグループ化することだけを目的としています。がない場合<ul>、a<li>はグループ化されていない個別のリストアイテムにすぎません。したがって、aが<li>ない<ul>場合でも、パーサーが渡す有効なマークアップです。


<td><tr>要素は特に要素内に存在する必要があります<table>http://www.whatwg.org/specs/web-apps/current-work/multipage/tabular-data.html#the-td-element

これは、パーサーによってテーブルが形成される方法であり、テーブルが<td>ない<table>場合はテーブルモデルエラーがスローされます:
http ://www.whatwg.org/specs/web-apps/current-work/multipage/tabular-data.html#table -モデル

このテストは次のことを示しています。

<!-- fail -->
<tr>
  <td>tr_td_test</td>
</tr>

<!-- fail -->
<td>td_test</td>

<!-- pass as a regular list item -->
<li>li_test</li>

<!-- pass and tr tag is added to DOM -->
<table>
  <td>table_td_test 1</td>
</table>

<!-- pass and td tag is added to DOM -->
<table>
  <tr>
    table_tr_test_1
  </tr>
</table> 
于 2012-12-19T07:01:58.157 に答える
4

chromeで要素を調べると、コードが次のように変更されていることがわかります。

<body>
    text one <br>
    this is next td
    <button onClick="myFunc()">click</button>
    <script type="text/javascript">//<![CDATA[ 

    function myFunc() {
    var second=document.getElementById('tdSecond').innerHTML;
    alert(second);

    //var second2=document.getElementsByTagName('td')[1].innerHTML;
    //alert(second2);  
    }

    //]]>  

    </script>
</body>

td要素は無効であるため、ブラウザによって削除されました。

于 2012-12-19T05:25:47.293 に答える
-2

これを試してください。htmlの問題があります。このhtmlを試してください

    <table border="1">
<tr>
<td class="tabletd"> text one </td><br>
<td class="tabletd" id="tdSecond"> this is next td</td>
</tr>
</table>
<button onclick="myFunc()">click</button>
于 2012-12-19T05:23:39.793 に答える