Per HTML syntax, the ID for an element has to be unique. So you can't have id="table1" twice in your document. Right nw, your table and a div are both called table1. You need to change one, or remove one.
Personally, I'd change the div's ID attribute, and then change the link calls. I went ahead and edited the HTML you posted. Here's a better version of it. I'd also suggest using <span> instead of <font>. Like I said, I kind of cleaned it up a bit....
<script type="text/javascript" language="Javascript"><!-- // --><![CDATA[
function switchTabs(on, off, tabTitle)
{
var tOn = document.getElementById(on+tabTitle);
var tOff = document.getElementById(off+tabTitle);
var dOn = document.getElementById(on);
var dOff = document.getElementById(off);
tOn.className = "selected";
tOff.className = "deselected";
dOn.style.display = '';
dOff.style.display = 'none';
}
//]]></script>
<div id="display1_title">
<a href="javascript:switchTabs('display1', 'display2', '_title');" style="color: #000; font-size: 2em; font-family: Tahoma; font-weight: bold;">Bartercard Cup</a>
</div>
<div id="display2_title">
<a href="javascript:switchTabs('display2', 'display1', '_title');" style="color: #000; font-size: 2em; font-family: Tahoma; font-weight: bold;">Tri Nations</a>
</div>
<div id="display1">
<table border="0" width="98%" id="table1" cellspacing="0" cellpadding="0">
<tr>
<td colspan="5" bgcolor="#000000">
<p align="center"><b><font size="1" face="Tahoma" color="#FFFFFF">Competition Name (BC)</font></b></td>
</tr>
<tr>
<td bgcolor="#DDDDDD"><b><font size="1" face="Tahoma">Pld:</font></b></td>
<td bgcolor="#DDDDDD" align="center"><b><font size="1" face="Tahoma">
Won:</font></b></td>
<td bgcolor="#DDDDDD" align="center"><b><font size="1" face="Tahoma">
Lost:</font></b></td>
<td bgcolor="#DDDDDD" align="center"><b><font size="1" face="Tahoma">
Drawn:</font></b></td>
<td bgcolor="#DDDDDD" align="center"><b><font size="1" face="Tahoma">
Points</font></b></td>
</tr>
<tr>
<td><font size="1" face="Tahoma">Team</font></td>
<td align="center"><font size="1" face="Tahoma">3</font></td>
<td align="center"><font size="1" face="Tahoma">2</font></td>
<td align="center"><font size="1" face="Tahoma">1</font></td>
<td align="center"><font size="1" face="Tahoma">7</font></td>
</tr>
</table>
</div>
<div id="display2" style="display:none;">
<table border="0" width="98%" id="table1" cellspacing="0" cellpadding="0">
<tr>
<td colspan="5" bgcolor="#000000">
<p align="center"><b><font size="1" face="Tahoma" color="#FFFFFF">Competition Name (TN)</font></b></td>
</tr>
<tr>
<td bgcolor="#DDDDDD"><b><font size="1" face="Tahoma">Pld:</font></b></td>
<td bgcolor="#DDDDDD" align="center"><b><font size="1" face="Tahoma">
Won:</font></b></td>
<td bgcolor="#DDDDDD" align="center"><b><font size="1" face="Tahoma">
Lost:</font></b></td>
<td bgcolor="#DDDDDD" align="center"><b><font size="1" face="Tahoma">
Drawn:</font></b></td>
<td bgcolor="#DDDDDD" align="center"><b><font size="1" face="Tahoma">
Points</font></b></td>
</tr>
<tr>
<td><font size="1" face="Tahoma">Team #5</font></td>
<td align="center"><font size="1" face="Tahoma">3</font></td>
<td align="center"><font size="1" face="Tahoma">2</font></td>
<td align="center"><font size="1" face="Tahoma">1</font></td>
<td align="center"><font size="1" face="Tahoma">7</font></td>
</tr>
</table>
</div>
That works for me.
Also you really have to watch on your page. You have the main table, the one that holds all the information labeled as "table1". So when you do the switch, it hides that table. Hence why everything disappears. The way to counteract that is to make sure that ever "id" attribute for every element is unique across the page. If it's unique, you won't get this mixup. I believe the above code should work out for this problem.