0
<table id="myTable" style="border: 1px solid; border-color: black; border-collapse: collapse;">
    <thead  style="background-color: silver;">
        <tr>
            <th >1</th>
            <th >2</th>
            <th >3</th>
            <th >4</th>
        </tr>
    </thead>
    <tbody  id="my_form">
        <tr>
            <td > <input type="text"> </td>
            <td > <input type="text"></td>
            <td ><input type="text"> </td>
            <td ><input  type="text"> </td>
        </tr>               
    </tbody>
</table>

これは私のhtmlテーブルで、これはコンテンツを読み取るための私のjs関数です

var mytable=document.getElementById('myTable');
var row_length=myTable.rows.length;
for(var i=1;i<row_length;i++)
    {
        var cells=change_key_table.rows.item(i).cells;
        var cell_length=cells.length;
        var content = cells.item(0).innerText;
            alert(content);
    }

これにより、空白の文字列が得られます。innerTextテーブルから値を読み取るために使用しないでください。入力タグから値を読み取る特定の方法はありますか? これに関するスタックオーバーフローで多くの質問を読みましたが、問題を解決するために何かを見つけることができました

4

1 に答える 1

2

テーブルから値を読み取るためにinnerTextを使用すべきではありませんか?

入力から値を読み取るために使用することはできません。

入力タグから値を読み取る特定の方法はありますか?

方法?valueいいえ。入力のプロパティ (文字列になります)にアクセスする必要があります。

重要なことは何もしていないように見えるため、テーブル構造の処理を完全にバイパスできます。

var mytable = document.getElementById('myTable');
var myinputs = mytable.getElementsByTagName('input');
for (var i = 0; i < myinputs.length; i++) {
    alert(myinputs[i].value);
}
于 2013-10-20T11:55:20.887 に答える