用ajax前台不能调用后台的函数
在前台相关代码如下:
<input onkeydown="EmployeeHandle()" id="txtEmployeeNum"></FONT>
function EmployeeHandle()
{
if (event.keyCode==13)
{
alert(document.getElementById("txtEmployeeNum").value);
if( EmployeeCheck(txtEmployeeNum).value==false)
{
alert("出错了,请重新输入");
}
}
}
后台相关代码如下:
private void Page_Load(object sender, System.EventArgs e)
{
Ajax.Utility.RegisterTypeForAjax(typeof(OvertimeWorkApply.WebForm1));//ajax方法注册
//this.txtEmployeeNum.Attributes.Add("onkeydown","EmployeeHandle()");
}
[Ajax.AjaxMethod(Ajax.HttpSessionStateRequirement.ReadWrite)]
public bool EmployeeCheck(string strID )
{
Response.Write ("<script language='javascript'>alert('2222');</script>");
SqlConnection conn=new SqlConnection(ConfigurationSettings.AppSettings["ConnectString"]);
conn.Open();
SqlCommand comm=new SqlCommand("Cb_land",conn);
comm.CommandType=CommandType.StoredProcedure;
SqlParameter par=new SqlParameter("@user",SqlDbType.VarChar,8);
par.Value=strID ;
comm.Parameters.Add(par);
SqlDataAdapter da=new SqlDataAdapter();
da.SelectCommand=comm;
DataSet ds=new DataSet();
da.Fill(ds);
Response.Write ("<script language='javascript'>alert(ds.Tables[0].Rows.Count);</script>");
if (ds.Tables[0].Rows.Count!=0)
{
this.lblEmpName.Text=ds.Tables[0].Rows[0][0].ToString();
return true;
}
else
{
return false;
}
}
现在前台的代码调用不了后台的这个函数,alert(document.getElementById("txtEmployeeNum").value);这句还可以正常执行。是哪儿有问题呢,请大家指点一下