2016-07-29 38 views
-2

在我的C#Webforms項目中,我有一個RadDatePicker控件集來運行JavaScript函數。每次我選擇一個日期,我得到這個Javascript錯誤:JavaScript錯誤:未捕獲TypeError:a [b]不是函數

Uncaught TypeError: a[b] is not a function

這是我的代碼。 JavaScript位於ASPX頁面的頂部,它具有控制權

function SetDateSession() { 
    console.log('here'); 
} 


<telerik:RadDatePicker ID="StartDatePicker" runat="server"> 
    <ClientEvents OnDateSelected="SetDateSession()" /> 
</telerik:RadDatePicker> 

我在選擇日期之後收到錯誤,並且錯誤發生在控制檯日誌之前。

我不明白爲什麼這個非常簡單的代碼不起作用。如果我嘗試使用input標籤中的onclick來調用該函數,它將起作用。

<input type="button" id="RepBtn" onclick="SetDateSession()" value="View" runat="server"/> 

我已經簡化了代碼,以至於我很難知道下一步要做什麼。

編輯:

與HTML和ASP.NET,如果你使用Telerik的OnClientClicked,並傳遞一個JavaScript函數,你不應該提供的括號。提供圓括號會導致函數在頁面加載時觸發,而不是點擊。

當RadButton時,它生成的HTML最終看起來像這樣:

<a id="exampleBtn" class="RadButton RadButton_Office2010Silver rbSkinnedButton" 
    href="javascript:void(0)"> 
    <input class="rbDecorated" type="submit" name="btnStandard_input" 
     id="btnStandard_input" value="Standard Button" /> 
    <input id="btnStandard_ClientState" name="btnStandard_ClientState" 
     type="hidden" /> 
</a>  

這是一個類型的輸入提交,當你刷新頁面,它會重新提交表單,運行你JavaScript功能。

+0

你在用什麼框架?你有權訪問源地圖嗎? –

+0

檢查問題的頂部以獲取最新編輯。而且我對源地圖一無所知 – CrazyPaste

+0

我被downvoted了?我的問題有問題嗎? – CrazyPaste

回答

0

這樣一個愚蠢的東西浪費多少時間!基本上,這

<ClientEvents OnDateSelected="SetDateSession()" />

應該是這個

<ClientEvents OnDateSelected="SetDateSession" />

教訓,Telerik的!謝謝。

相關問題