2016-04-22 56 views
1

私は同様の質問に対するいくつかの回答を読んだことがあります。私は考えることができるすべてを試しました。ここでは、私のコードは次のようになります。ここではPageMethodsオブジェクトが定義されていないのはなぜですか?

<asp:ScriptManager ID="ScriptMgr" runat="server" EnablePageMethods="true"></asp:ScriptManager> 
<asp:TextBox ID="TextBox" runat="server" onblur="textboxOnBlur()"></asp:TextBox> 
<script> 
    function onSuccess() { 
     alert("success"); 
    } 

    function onFailure() { 
     alert("failure"); 
    } 

    function textboxOnBlur() { 
     PageMethods.CheckDBForCodes(onSuccess, onFailure); 
     //alert("test"); 
    } 

</script> 

PageMethodsによって呼び出されるべきサーバ側の機能です:何らかの理由で

<System.Web.Services.WebMethod()> 
Protected Shared Sub CheckDBForCodes() 
    `search DB for codes 
End Sub 

、私はまだPageMethodsと言うエラーメッセージが出てい定義されていません。ご覧のとおり、テキストボックスからクリックすると、textboxOnBlur関数が呼び出されます。何か不足していますか?

+0

まず、「」は「」であるべきですか? –

+0

@AndrewMortonわかりません。私は ''で何も見たことがありません。 – ic3man7019

+0

OK、最初の[チュートリアル](http://metasapiens.com/pagemethods/intro.aspx)に見つかりました。他のほとんどのチュートリアルでは ''が使われています。 –

答えて

0

PageMethodsオブジェクトが未定義の理由は、サーバー側機能へのアクセス修飾子がProtectedに設定されているためです。私はそれをPublicに変更し、すべてが世界でうまくいった。

関連する問題