1

私は次のように宣言されたhtml要素を持っています:

<div id="taskImage" runat="server">
   <a href="javascript:void(0);" onclick="switchViews('div<%# Eval("proId") %>', 'one');">
      <img id='imgdiv<%# Eval("proId") %>' alt="Click to show/hide tasks" border="0" src="..."/>
   </a>
</div>

また、javascript 関数 switchViews は、次のように post-html として宣言されます。

function switchViews(obj, row) {

      var div = document.getElementById(obj);
    var img = document.getElementById('img' + obj);

    if (div.style.display == "none") {
        div.style.display = "inline";

        img.src = "../../images/icons/delete.png";

    }
    else {
        div.style.display = "none";

        img.src = "../../images/icons/add.png";

    }

}

HTML要素をクリックすると、「Object Exepcted」というJSエラーがスローされ、Google Chromeスクリプトデバッガーでは、switchViewsが未定義であると表示されます。switchViews が未定義であると考えるのはなぜですか?どうすれば修正できますか? 記録のために、html の前に宣言された javascript と、href 属性での switchViews 呼び出しを使用して試しましたが、すべて同じように終了します。

編集:何かをクリアするには、post-html と pre-html によって、html 要素を書き出す前後を意味します。投稿は次のようになります

<div>
   <!-- All my html stuff -->
<div>
<script type="text/javascript">
   <!-- All my Javascript -->
</script>

pre はその逆になります

4

2 に答える 2