偶然これに出くわしましたが、Chrome と IE9 で動作します。一意の ID を必要とする可能性のある他の JavaScript ライブラリを使用していない場合、これを使用してはいけない特定の理由はありますか?
<form id=form_id>
    <table id=table_id>
            <th><th>Column1</th><th>Column2</th><th>Column3</th></tr>
            <tr><td><input id="c1" type="text" value="11" /></td>
                <td><input id="c2" type="text" value="12" /></td>
                <td><input id="c3" type="text" value="13" /></td>
            </tr>
            <tr><td><input id="c1" type="text" value="21" /></td>
                <td><input id="c2" type="text" value="22" /></td>
                <td><input id="c3" type="text" value="23" /></td>
            </tr>
            <tr><td><input id="c1" type="text" value="31" /></td>
                <td><input id="c2" type="text" value="32" /></td>
                <td><input id="c3" type="text" value="33" /></td>
            </tr>
    </table>
</form>
column1 row3 項目にアクセスするには:form_id.elements.c1[2].valueまたはdocument.getElementByID("form_id").elements.c1[2].value
このメソッドでは、id の複数の出現を配列として扱うことができるようです。