0

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">   

   

2011-2012 または 2012-2013 をクリックすると、div タグの表示プロパティを設定したいと思います。これには次の Javascript コードを使用しており、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>  
4

3 に答える 3

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');
}
于 2012-11-30T10:13:57.807 に答える
0

次の方法で clickHandler を使用できます。 function clickHandler(e) { window.document.links[0].handleEvent(e); }

クリックを処理したい要素にイベントを空間的にバインドする必要があります。詳細については、次のリンクを参照してください。

http://docs.oracle.com/cd/E19957-01/816-6409-10/evnt.htm#1009606

于 2012-11-30T10:14:31.173 に答える
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>
于 2012-11-30T10:32:01.107 に答える