首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > asp.net >

小弟我用母版的生成的内容页实现 ICallbackEventHandler 接口的奇怪有关问题

2012-01-09 
我用母版的生成的内容页实现 ICallbackEventHandler 接口的奇怪问题我用母版的生成的内容页继承ICallbackE

我用母版的生成的内容页实现 ICallbackEventHandler 接口的奇怪问题
我用母版的生成的内容页继承   ICallbackEventHandler   接口,并实现了   RaiseCallbackEvent、GetCallbackResult   接口,但在客户端异步调用没有任何效果。

经过偶对客户端脚本的单步跟踪发现,客户端没有任何问题(XMLHTTP   调用是成功的)。

问题因该是发生在服务器端:为了测试,偶在类里面添加了构造函数并设置中断,发现客户端异步回发服务器时,服务器端的构造函数被执行,说明客户端回发成功,但   .NET   框架却没有调用接口   RaiseCallbackEvent、GetCallbackResult   等方法。


偶实在搞郁闷了,拜托大家没指教一下。  

客户端脚本如下:
<script   type= "text/javascript ">
        function   <%=   this.ddlArea.ClientID   %> _Change(obj)
        {
                var   value   =   parseInt(obj.value);
                var   ddlCity   =   document. <%=   this.Form.ClientID   +   ". "   +   this.ddlCity.ClientID   %> ;
               
                if(isNaN(value))
                {
                        alert(_ScriptError);
                        return;
                }
               
                ddlCity.options.length   =   0;
               
                <%=   this.ClientScript.GetCallbackEventReference(this,   "\ "a\ " ",   "__test ",   null)   %> ;
        }
       
        function   __test(value)
        {
                alert(value);
        }
</script>

页面源代码如下:
using   System;
using   System.Data;
using   System.Configuration;
using   System.Collections;
using   System.Web;
using   System.Web.Security;
using   System.Web.UI;
using   System.Web.UI.WebControls;
using   System.Web.UI.WebControls.WebParts;
using   System.Web.UI.HtmlControls;
using   Ahcom.Data;

public   partial   class   search_Default   :   System.Web.UI.Page,   System.Web.UI.ICallbackEventHandler
{
        TextBox   txtSearch;
        HiddenField   hdnSearch;
        Button   btnSearch;
        string   CallBackValue;

        public   search_Default()
        {  
       
        }

        protected   void   Page_Load(object   sender,   EventArgs   e)
        {
                this.Title   =   "信息库 ";
                this.txtSearch   =   (TextBox)this.Master.FindControl( "txtSearch ");
                this.hdnSearch   =   (HiddenField)this.Master.FindControl( "hdnSearch ");


                this.btnSearch   =   (Button)this.Master.FindControl( "btnSearch ");

                this.btnSearch.Click   +=   new   EventHandler(btnSearch_Click);

                if   (!this.IsPostBack)
                {
                        this.ddlArea.DataTextField   =   "Name ";
                        this.ddlArea.DataValueField   =   "ID ";
                        DbInstance.DataBind(this.ddlArea,   "SELECT   [ID],   [Name],   [Description]   FROM   [GBC_Area]   WHERE   [Country]   =   1 ");
                        ListItem   li   =   new   ListItem( "选择省份 ",   "0 ");
                        li.Selected   =   true;
                        this.ddlArea.Items.Insert(0,   li);

                        this.ddlArea.Attributes.Add( "onchange ",   this.ddlArea.ClientID   +   "_Change(this); ");
                }
                else
                {  
                        //Resources.Script.SearchResetFiltr
                }
        }

        void   btnSearch_Click(object   sender,   EventArgs   e)
        {
                if   (this.IsValid)
                {
                        int   type;
                        int.TryParse(this.hdnSearch.Value,   out   type);

                        //switch   (type)
                        //{  
                        //         case   2:
                        //                 Response.Redirect( "buy.aspx?key=  
                        //}
                       
                }
        }

        #region   ICallbackEventHandler   成员

        public   string   GetCallbackResult()
        {


                return   "aa ";
        }

        public   void   RaiseCallbackEvent(string   eventArgument)
        {
                return;
        }

        #endregion
}


[解决办法]
来也
[解决办法]
奥~~my god,我来JF`
[解决办法]
你应该调适一下,看能不能进入
public void RaiseCallbackEvent(string eventArgument)
{
string str=string.empty
return;
}
这个方法中,能进入就应该没有问题。

热点排行