在html中我有以下标签。
<a href="javascript:void(0)"><span id=M26>2011-2012</span></a>
<div id=c26 STYLE="display:none">
<a href="javascript:void(0)"><span id=M27>2012-2013</span></a>
<div id=c26 STYLE="display:none">
on点击2011-2012或2012-2013我想设置div标签的displaye属性。 我正在使用以下java脚本代码,我在body标签中调用javascript函数。输出显示样式,显示不是对象或属性。
<script language="javascript">
function clickHnadler()
{
var xid= document.getElementsByTagName("span");
var xsp= xid[0].id;
alert("Span id is "+xsp);
if(xsp.charAt(0)=="M")
{
var oC = document.all("C"& xsp.substring(1,2));
if(oC.STYLE.display == "none")
{
oC.Style.Display = "";
}
else{
oC.Style.Display = "none";
}
}
}
</script>
答案 0 :(得分:0)
使用jquery:
你可以传递函数元素或Id: 例如:
<a href="#" onclick="clickhandler(this)"><span id=M26>2011-2012</span></a>
function clickHnadler(element)
{
var id = $(element > span).attr(id);
id[0] = 'c'; //not the nicest way, maybe use a replace or something like that
$(id).show(); //or $(id).css('display','list');
}
答案 1 :(得分:0)
你可以使用clickHandler有以下方式, function clickHandler(e){ window.document.links [0] .handleEvent(E); }
您需要将事件与您要处理的元素进行空间绑定。欲了解更多信息,请参阅以下链接,
http://docs.oracle.com/cd/E19957-01/816-6409-10/evnt.htm#1009606
答案 2 :(得分:0)
根据我对你的问题的理解,我想出了这个。
<script type="text/javascript" src="jquery1.8.js"></script>
<a href="javascript:void(0)" onclick="$(this).next('div').toggle()"><span id=M26>2011-2012</span></a>
<div id=c26 STYLE="display:none">
2011-2012 details</div>
<br />
<a href="javascript:void(0)" onclick="$(this).next('div').toggle()"><span id=M27>2012-2013</span></a>
<div id=c26 STYLE="display:none">
2012-2013 details
</div>