改一点就可以了
page_loadTextBox1.Attributes["onblur"]="if (this.value==''){alert('空');}";
//
//
for(int i=0;i<this.Page.Controls.Count;i++)
{
    if(this.Page.Controls[i].FullName=="System.Web.UI.WebControls.TextBox")
    {
         TextBox txt=(TextBox)this.Page.Controls[i];
         txt.Attributes.Add("onchange","ValidateText(this)");
    }
}
把这个循环放到Page_Load()中。
<script>
function ValidateText(obj)
{
     if(obj.value=="")
     {
          alert("此处不能为空,请重新填写!");
          obj.focus();
     }
     var s="数字";
     for(int i=0;i<obj.value.length;i++)
    {
         if(!RegText(obj.value.charAt(i)))
         {
             s="字符串";
             break;
         }
     }
     alert("此处现在填入的是"+s);
     obj.focus();
}fucntion RegText(str)
{
    var re = new RegExp("123456789.");
    var a = re.exec(str);
    if(re.lastIndex==-1)
    {
         return false;
    }
    else
    {
         return true;
    }
    
}
</script>
//