2013-03-19 19 views
1

statment此代碼是在VS 2003 -asp.net從調用如果HTML

在HTML頁面wriiten JavaScript函數,我有一個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()沒有定義

回答

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

如果您打算調用服務器端代碼塊內的checkuser()功能(如您展示一個) ,你必須在頁面的代碼後面定義函數,而不是在客戶端使用JavaScript。

換句話說,你需要有一個名爲

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

功能,那麼你可以把它作爲你打算。

0

你不能混用你的後端和你的前端代碼。

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

和JS:

<script> 
    function clickHandler(){ 
     if(checkuser()){ 
      //do something 
     }else{ 
      //do something else 
     } 
    } 
</script>