特定のボタン (この場合はリンク) のクリックに基づいてコンテンツを変更するテーブルがいくつかあります。私はこの Javascript コードを他の場所でうまく使用しましたが、switchid() 関数のパラメーターは 1 つだけでした (いじるテーブルは 1 つだけでした)。私はこの例を調査し続けており、変数を正しく渡しているようですが、何が間違っているのでしょうか? このコードは、Chrome または IE では機能しません。
編集: コメントによると、JavaScript セクションを 1 つの小さな関数に絞り込むことができました。これは同じことを行う必要があります。下記に変更させていただきました。しかし、それでもうまくいきません。
また、「array」変数と「x」変数を「JonArray」と「JonX」に変更して、それらのいずれかが予約語になる可能性を回避しました。
<!DOCTYPE html>
<html>
<body>
<script type="text/javascript">
var topTable = new Array('English','Spanish');
var bottomTable = new Array('Japanese','Italian');
function switchid(JonArray,JonX) {
for(var i=0;i<JonArray.length();i++) {
document.getElementById(JonX).style.display='none';
}
document.getElementById(JonX).style.display='table-row-group';
}
</script>
<table border='1'>
<thead>
<tr><td>Odds</td><td>Evens</td></tr>
</thead>
<tfoot>
<tr><td><a href="javascript:switchid('topTable','English')">English</a></td><td><a href="javascript:switchid('topTable','Spanish')">Spanish</a></td></tr>
</tfoot>
<tbody id='English'>
<tr><td>One</td><td>Two</td></tr>
<tr><td>Three</td><td>Four</td></tr>
</tbody>
<tbody id='Spanish' style="display:none;">
<tr><td>Uno</td><td>Dos</td></tr>
<tr><td>Tres</td><td>Quatro</td></tr>
</tbody>
</table>
<br />
<table border='1'>
<thead>
<tr><td>Odds</td><td>Evens</td></tr>
</thead>
<tfoot>
<tr><td><a href="javascript:switchid('bottomTable','Japanese')">Japanese</a></td><td><a href="javascript:switchid('bottomTable','Italian')">Italian</a></td></tr>
</tfoot>
<tbody id='Japanese'>
<tr><td>Ichi</td><td>Ni</td></tr>
<tr><td>San</td><td>Shi</td></tr>
</tbody>
<tbody id='Italian' style="display:none;">
<tr><td>Un</td><td>Due</td></tr>
<tr><td>Tre</td><td>Quattro</td></tr>
</tbody>
</table>
</body>
</html>