1

このコードはVS2003-asp.netで記述されています

HTMLページには、ブール値を返すjavascript関数checkuser()が定義されています。この関数の呼び出しに以下を含めたいと思います

<A onclick="stageClear(); stageEditor();" href="javascript: void(0);">Add new Stage</A>

こんなもの欲しい

<%if checkuser() then%> <A onclick="stageClear(); stageEditor();" href="javascript: void(0);">Add new Stage</A> <% end if %>

しかし、エラーcheckuser()が定義されていません

4

3 に答える 3

2

あなたのコードは、checkuser という asp 関数を探しているように見えます。

js でやりたい場合は、次のようにする必要があります。

<script type="text/javascript">
   if (checkuser()) {
      document.write('<a onclick="stageClear(); stageEditor();" href="javascript: void(0);">Add new Stage</a>');
   }
</script>
于 2013-03-19T14:31:06.750 に答える
2

サーバー側のコード ブロック (表示されているもの) 内で関数を呼び出す場合はcheckuser()、JavaScript を使用してクライアント側ではなく、ページのコード ビハインドで関数を定義する必要があります。

つまり、という関数が必要です

protected bool checkuser()
{
    return true;//just an example
}

そして、意図したとおりに呼び出すことができます。

于 2013-03-19T14:31:06.997 に答える
0

バックエンドとフロントエンドのコードを混在させることはできません。

<a onclick="clickHandler()" href="javascript:void(0)">Stuff</a>

とJS:

<script>
    function clickHandler(){
        if(checkuser()){
            //do something
        }else{
            //do something else
        }
    }
</script>
于 2013-03-19T14:39:31.423 に答える