Javascript

Ajax用户名检测

[ 不指定 2008/12/19 18:54 | by wxxslt ]
checkUsername.php


<?php
$info= "http://".$_SERVER[...
parse_str($info);
if($username == "wxxslt"){
echo "failure";
}
else{
echo "success";
}
?>


check.html


<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml...
<html xmlns="http://www.w3.org/1999/xht...
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>检测用户名</title>
<script language="javascript" type="text/javascript">
  function createRequest(){
    var xmlHttp = false;
    if (window.XMLHttpRequest) { // 在非IE浏览器中创建XMLHttpRequest对象
      xmlHttp = new XMLHttpRequest();
    } else if (window.ActiveXObject) { //通过ActiveX创建XMLHttpRequest
    try {
      // 尝试按新版InternetExplorer方法创建
      xmlHttp = new ActiveXObject("Msxml2.XMLHTTP");
    } catch (error1) { // 创建请求的ActiveX对象失败
      try {
        // 尝试按老版InternetExplorer方法创建
        xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");
      } catch (error2) {
        // 不能通过ActiveX创建XMLHttpRequest
        xmlHttp = false;
      }
    }
  }
  return xmlHttp;
  }
  function checkUsername(username){
    var checkRet = document.getElementById("checkRet");
    var form=document.forms[0];
    var name=form.username;
    if(name.value!=""){
  checkRet.innerHTML = "请稍候,正在检测用户名...";
    }
    var xmlHttp = createRequest();
  var url = "checkUsername.php?username=" + username;
  xmlHttp.open("get",url);
  xmlHttp.onreadystatechange = function(){
      if(xmlHttp.readyState==4){
        if(xmlHttp.status==200){
         if(xmlHttp.responseText=="success"&&name.value!=""){
            checkRet.innerHTML = "恭喜你,该用户名还没有被使用!";
         }else if(xmlHttp.responseText=="failure"){
           checkRet.innerHTML = "对不起,该用户名已经被占用!";
           name.value="";
           name.focus();
        }
      }
     }
    }
    xmlHttp.send(null);
  }
</script>
</head>
<body>
<form id="form1" name="form1" method="post" action="">
  <label>用户名:
  <input type="text" name="username" onblur="checkUsername(this.value)" /><div id="checkRet"></div>
  </label>
  <br/>
  <label>性别:
  <input type="text" name="sex" />
  </label>
</form>
</body>
</html>
Tags: ,

IE处理XML

[ 不指定 2008/12/06 15:04 | by wxxslt ]
最近在学数据结构树的操作,又看下了书,抄了几段代码上来,我是看懂了,各位呢?感觉很像。

movie.html:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml...
<html xmlns="http://www.w3.org/1999/xht...
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>增加新电影</title>
<script src="IELoadXML.js"></script>
<script src="view.js"></script>
<script src="add.js"></script>
<script src="del.js"></script>
<script language="javascript" type="text/javascript">
    var xmlDOM = loadXML("movie.xml");
</script>
</head>
<body onload="refresh()">
<center>
<form id="movieDOM" name="movieDOM" action="#" method="get">
<h2>XML文档显示</h2>
<textarea id="view" name="view" rows="10" cols="50" ></textarea>
<hr />
<br />
ID:<input type="text" name="id" id="id" size=20/><br />
名称:<input type="text" name="name" id="name" size=20/><br />
</form>
<input type="submit" value="增加新电影" onclick="add();refresh()"/>
<input type="submit" value="删除最后一个" onclick="delLast();refresh()"/>
<input type="submit" value="刷新" onclick="refresh();"/>
</center>
</body>
</html>



IELoadXML.js:

function loadXML(xmlDoc){
  try{
    var _xmlDOM;
    _xmlDOM= new ActiveXObject("Microsoft.XMLDOM");
    _xmlDOM.async = false;
    _xmlDOM.load(xmlDoc);
    alert("加载成功");
    return(_xmlDOM);
  }catch(e){
    alert(e.message);
    return(null);
  }
}




view.js:


function dump(string){
  var current = document.movieDOM.view.value;
  current += string;
  document.movieDOM.view.value = current;
}
function view(node){
  var type = node.nodeType;
  if(type == 1){
    dump("\<" + node.tagName);
    var attr = node.attributes;
    if(attr){
      var count = attr.length;
      var index = 0;
      while(index < count){
        attribute = attr[index];
        if(attribute)
          dump(" "+attribute.name+"="+attribute.value);
        index++;        
      }
    }
    if(node.hasChildNodes()){
      dump(">\n");
      var _ChildNodes=node.childNodes;
      var length = _ChildNodes.length;
      var count = 0;
      while(count < length){
        _ChildNode = _ChildNodes[count];
        view(_ChildNode);
        count++;      
      }
      dump("</"+node.tagName+">\n");
    }
    else dump("/>\n");
  }else if(type == 3){
    dump(node.data+"\n");
  }
}
function refresh(){
  document.movieDOM.view.value = '';
  view(xmlDOM.documentElement);
}




add.js:

function add(){
    var rootE = xmlDOM.documentElement;
    var newMovie = xmlDOM.createElement('movie');
    var newID =  xmlDOM.createElement('id');
    var id = xmlDOM.createTextNode(document.movieDOM.id.value);
    newID.appendChild(id);
    newMovie.appendChild(newID);
    var newName = xmlDOM.createElement('name');
    var name = xmlDOM.createTextNode(document.movieDOM.name.value);
    newName.appendChild(name);
    newMovie.appendChild(newName);
    rootE.appendChild(newMovie);
}




del.js:

function delLast(){
    var rootE = xmlDOM.documentElement;
    if(rootE.hasChildNodes()){
      rootE.removeChild(rootE.lastChild);
    }else{
      alert("该节点没有子节点!");
    }
}
Tags: ,

几个很有用的JS

[ 不指定 2008/11/21 20:10 | by wxxslt ]
状态栏定时器:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml...
<html xmlns="http://www.w3.org/1999/xht...
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>定时器的使用</title>
</head>
<script language="javascript" type="text/javascript">
  var timer;
  function start(){
    date = new Date().toLocaleString();
window.status=date;
  }
</script>
<body>
<form id="form1" name="form1" method="post" action="">
  <label>
  <input type="button" name="Submit" value="显示时钟" onclick="timer=setInterval('start()',1000)"/>
  </label>
  <label>
  <input type="submit" name="Submit2" value="停止显示" onclick="clearInterval(timer)"/>
  </label>
</form>
</body>


三个很有用的正则

[ 不指定 2008/11/14 20:31 | by wxxslt ]
1、/^\S+@\S+\.\S+$/  用于E-mail验证
2、/^(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])\.(\d{1,2}|1\d\d|2[0-4]\d|25[0-5])$/

用于IP地址验证

3、/^\d{17}(\d|X)$/  身份证验证

JS实现:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml...
<html xmlns="http://www.w3.org/1999/xht...
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>验证身份证号码</title>
<script type="text/javascript">
//建立存在地址码及地址名称的数组
var aCity={11:"北京",12:"天津",13:"河北",14:"山西",15:"内蒙古"
      ,21:"辽宁",22:"吉林",23:"黑龙江 ",31:"上海",32:"江苏"
      ,33:"浙江",34:"安徽",35:"福建",36:"江西",37:"山东",41:"河南"
      ,42:"湖北 ",43:"湖南",44:"广东",45:"广西",46:"海南",50:"重庆"
      ,51:"四川",52:"贵州",53:"云南",54:"西藏 ",61:"陕西",62:"甘肃"
      ,63:"青海",64:"宁夏",65:"新疆",71:"台湾",81:"香港",82:"澳门",91:"国外 "
      }
function checkCard(cardId){
  var iSum = 0;
  var re = /^\d{17}(\d|X)$/i;
  if(!re.test(cardId)){
    return false;
  }
  cardId = cardId.replace(/X$/i,"a");
  //验证地址码是否合法
  if(aCity[parseInt(cardId.substr(0,2))] == null){
    alert('地址非法!');
    return false;
  }
  //验证出生日期码是否合法
  sBirthday = cardId.substr(6,4)+"-"+Number(cardId.substr(10,2))+"-"+Number(cardId.substr(12,2));
  var date = new Date(sBirthday.replace(/-/g,"/"));
  if(sBirthday!=(date.getFullYear()+"-"+ (date.getMonth()+1) + "-" + date.getDate())){
    alert('出生日期非法!');
    return false;
  }
  //验证检验码是否合法
  for(var i = 17;i>=0;i--){
    iSum += (Math.pow(2,i) % 11) * parseInt(cardId.charAt(17 - i),11);
  }
  if(iSum%11!=1){
    alert("校验码非法!");
    return false;
  }
  alert('地址:'+aCity[parseInt(cardId.substr(0,2))] + "\n"
         + "出生日期:" +sBirthday + "\n"
         + "性别:" + (cardId.substr(16,1)%2?"男":"女"));
}
</script>
</head>
<body>
<form id="form1" name="form1" method="post" action="">
  <label>请输入身份证号码:

  

  <input name="card" type="text" id="card" maxlength="19" />
  </label>
  <p>
    <label>
    <input type="button" name="Submit" value="确定" onclick='checkCard(this.form.card.value)'/>
    </label>
    <label>
    <input type="reset" name="Submit2" value="重置" />
    </label>
  </p>
</form>
</body>
</html>
Pages: 1/1 First page 1 Final page [ View by Articles | List ]