我要做的是:一个页面需要输入数据后保存数据然后再打印,但是保存按钮和打印按钮是同一个按钮,单击的时候让它先执行保存操作然后再进行Js自带的打印方法,但是我的问题是第一遍一直是先执行打印,保存操作部执行,所以需要用Js调用后台保存的方法,然后再打印。向各位高人求助!

解决方案 »

  1.   

    html             function change(obj)
                {
                    
                    var arr = MemberData1.FunAjax(obj.value).value;
                    if(    arr =="0")
                    {
                        document.getElementById('lblShow').style.display ='block';
                        document.getElementById('lblShow').innerText = '此帳號已經存在';
                    }        
                    else
                    {
                        document.getElementById('lblShow').style.display ='none';
                    }    
                }cs
    private void Page_Load(object sender, System.EventArgs e)
            ...{            if (! Page.IsPostBack)
                ...{    
                    Ajax.Utility.RegisterTypeForAjax(typeof(MemberData1));//MemberData1中为页面的类名称
                    this.TextGAccount.Attributes.Add("onchange","javascript:change(this);");
                    
                    InitailData();//新增會員                if (Request["callback"] != null && Request["callback"].ToString() == "3")
                    ...{
                  
                        Response.Write(BindAreaByAjax(Convert.ToInt16(Request["CityID"])));
                        Response.End();
                   
                    }
                }
            }
            //帳號驗證
            [Ajax.AjaxMethod()] 
            public static string FunAjax(string GAccount)
            ...{
                GuestCenter gct =new GuestCenter();
                DataTable tab = gct.GSTA_SelMemberByGAcount(GAccount);            if(tab.Rows.Count!=0)
                ...{
                    return "0";                    //帳號存在
                }
                return "1";            //帳號不存在
            }建立HttpHandler,在web.config里面加上<configuration><system.web><httpHandlers><add verb="POST,GET" path="ajax/*.ashx" type="Ajax.PageHandlerFactory, Ajax" /></httpHandlers> <system.web></configuration>
      

  2.   

    使用ajax.dll或ajaxpro.dll是一种比较方便的实现ajax的方式!
      

  3.   

    你可以用Jquery来完成, Jquery有一个插件,叫 ajaxform ,
    使用他,你就可以做到先将表单数据POST到server上保存,然后在调用print方法了~~~