用户控件中使用 AjaxPro 问题,无法识别类名
使用AjaxPro制作无刷新注册。将注册写成用户控件后提示 “<命名空间.类名>未定义”错误,我差看了好多网上的信息,都没有明确的解决办法,是否用户控件里就无法在使用AjaxPro了。
下面是网上的一个测试代码,我按同样的新建一个.NET页面是正常的,但是写成用户控件就提示错误。
客户端JS代码
<script language="jscript">
function VerifyUsername(name)
{
Userreg.GetReturnCode(name,IsUsernameExist_callback);
}
function IsUsernameExist_callback(res)
{
var msg = document.getElementById("pwdInfor");
var bRet = res.value;
if(bRet == "0")
{
msg.innerHTML = "用户名存在!";
msg.style.color = "green";
}
else if(bRet == "1")
{
msg.innerHTML = "用户名长度必须在3到15之间,且不包含字母、数字和下划线以外的字符!";
msg.style.color = "red";
}
else
{
msg.innerHTML = "用户名不存在!";
msg.style.color = "red";
}
}
</script>
用户控件中代码:
/// <summary>
/// 控件初始化
/// </summary>
protected override void InitializeSkin(System.Web.UI.Control skin)
{
AjaxPro.Utility.RegisterTypeForAjax(typeof(YunBao.Controls.Userreg), this.Page);
TextBox2 = (TextBox)skin.FindControl("TextBox2");
TextBox2.Attributes.Add("onblur", "VerifyUsername(this.value)");
}
//加上[AjaxPro.AjaxMethod],才能被客户端访问
[AjaxPro.AjaxMethod]
public string GetReturnCode(string strUsername)
{
if (!IsValidUsername(strUsername))
{
return "1";
}
else if (!IsUsernameExist(strUsername))
{
return "2";
}
else
{
return "0";
}
}
....其他省略...
错误提示:Userreg 未定义。
请高手指点解决方法,或者如果ajaxpro无法支持用户控件,是否换其他的可以实现。谢谢了。