私は次のように宣言された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 はその逆になります