求:asp:TextBox失去焦点"事件"

anlaetion 2008-11-13 03:31:32
求:asp:TextBox失去焦点后,判断该TextBox中的用户名是否可用(重复),并在该TextBox后显示可用或不可用图标..........PS:菜鸟问题..还请高手给段代码参考!
...全文
1216 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaokanqq 2010-12-22
  • 打赏
  • 举报
回复
说的是什么啊,整个能执行的代码,啥事都解决了
爱的华尔兹 2010-05-26
  • 打赏
  • 举报
回复
学习了!
melon23 2008-11-13
  • 打赏
  • 举报
回复
以测试:
<script type="text/javascript">

var XMLHttp = null;
function checkNickName()
{

try
{
xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
}
catch(err1)
{
try
{
xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
}
catch(err2)
{
xmlHttp = new XMLHttpRequest();
}
}

var Text1 = document.getElementById("txtNickName");
var url = "Default2.aspx?User=" + Text1.value;
xmlHttp.open("GET",url,true);
xmlHttp.onreadystatechange = OnHandler;
xmlHttp.send(null);

}
function OnHandler()
    {
      if(xmlHttp.readyState == 4)
      {
        var isValid = xmlHttp.responseText;
        var exists = document.getElementById("exsits");
        exists.innerHTML = isValid.substring(0,4);
      }
    }

</script>



  <input type="text" id="txtNickName"  onblur="checkNickName()"/>
<label id="exsits"></label>



新建个Default2.aspx

 protected void Page_Load(object sender, EventArgs e)
{

string user = this.Request.QueryString["User"];
if (SqlServer.User.UserNameExists(user)) //执行语句数据库的数据是否存在
{
Response.Write("True");
}
else
{
Response.Write("False");
}


}





Robin 2008-11-13
  • 打赏
  • 举报
回复
onfocusout 在移动焦点到其它元素之后立即触发于当前拥有焦点的元素上触发。
anlaetion 2008-11-13
  • 打赏
  • 举报
回复
lmc1986...可以发一下CS的代码吗?
anlaetion 2008-11-13
  • 打赏
  • 举报
回复
lmc1986..请问一下...后台那边如何接收呢?..Ajax..我没用过
jiang_jiajia10 2008-11-13
  • 打赏
  • 举报
回复
http://download.csdn.net/down/554726/dupeng0811
http://hi.baidu.com/lovedupeng/blog/item/aa15bc2f5f22333e1f3089ff.html
weilu0328 2008-11-13
  • 打赏
  • 举报
回复
TextBox1_TextChanged时间貌似不行,因为TextChanged时间是判断两次焦点都在TextBox框内的时候,这两次的Text属性的内容是否有变化,即使你讲AutoPostBack 设置成True!
lmc1986 2008-11-13
  • 打赏
  • 举报
回复
<input type="text" onblur="javascript:checknackname();"/>
coolsenbaba 2008-11-13
  • 打赏
  • 举报
回复
用jquery 很简单的啊
lmc1986 2008-11-13
  • 打赏
  • 举报
回复
	
function checkNickName()
{
if(document.getElementById("txtNickName").value!="")
{
//检测用户有无输入昵称
document.getElementById("lblError").innerText="正在检测,请稍候...";
var xml=new ActiveXObject("Microsoft.XMLHttp");
xml.open("post","CheckNickName.aspx?nickName=" + escape(document.getElementById("txtNickName").value),"false");
xml.send("");
var result=xml.responseText;
if (result=="True")
{
document.getElementById("lblError").innerText="Sorry,该昵称已被注册";
}
else if (result=="False")
{
document.getElementById("lblError").innerText="恭喜,该昵称可以使用";
}
//与服务器通信失败
}
}
lmc1986 2008-11-13
  • 打赏
  • 举报
回复
用ajax,textbox失去焦点后,用ajax到后台验证用户是否存在
jiang_jiajia10 2008-11-13
  • 打赏
  • 举报
回复
AJAX
  • 打赏
  • 举报
回复

private void txtInvoiceDept_TextChanged(object sender, System.EventArgs e)
{
this.ddlInvoiceDept.Items.Clear();

Hashtable pars = new Hashtable();

if(this.txtInvoiceDept.Text.Trim() != "")
pars.Add("OwnerName",this.txtInvoiceDept.Text.Trim());

ArrayList list = T_GG_SJ_CustomerProc.GetList(pars);

this.ddlInvoiceDept.DataSource = list;

this.ddlInvoiceDept.DataValueField = "OwnerNo";

this.ddlInvoiceDept.DataTextField = "OwnerName";

this.ddlInvoiceDept.DataBind();

this.ddlInvoiceDept.Items.Insert(0,new ListItem("全部"));
}

这是代码,作用是根据输入的内容从数据库中查出相应的数据源绑定到DropDownList
  • 打赏
  • 举报
回复
TextBox的AutoPostBack属性设为True
然后写TextChange事件
anlaetion 2008-11-13
  • 打赏
  • 举报
回复
我结贴很快...希望大家帮帮忙...测试可用即刻给分
解决这个问题,得需要使用onblur来实现。下面代码并非是专案实现代码,只是模拟相同的功能。 复制代码 代码如下: <!–Ajax实现页面不闪烁,一直是Insus.NET所喜欢使用的–> <asp ID=”ScriptManager1″ runat=”server”> asp> <asp ID=”UpdatePanel1″ runat=”server”>

62,041

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧