先介绍一下我的程序结构,我是用php做的一个用户搜索页面,然后用javascript判断用户名和密码是否为空,我想请教各位大神,假如说我用户名不为空,密码为空,用js判断后,系统会把控件里面的内容清空,请教各位大神怎么做才做到js判断之后保留控件里面的内容!

解决方案 »

  1.   


    var obj_name = document.getElementById("_name");
    var nm = obj_name.value;
    if(nm=="XX"){
    alert("你输入名字为XX,清空");
    obj_name.value="";//清空
    }对于上面这一个控件来说,取值与清空用这种方式就可以了
    你说的抱怨值被清空了,处理方法有
    (1)不让本页跳转/刷新(异步处理)
    (3)如果设定了value=""重新载入后都会被置空
    (2)本页若必须跳转,将值例如上面 nm等数据保存,再次用于控件赋值
      

  2.   

    <html xmlns="http://www.w3.org/1999/xhtml" lang="en">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>HTML</title>
    <meta name="author" content="josh" />
    <!-- Date: 2012-08-31 -->
    </head>
    <body>
    <form action="" method="post" id="form1">
    <table >
    <tr>
    <td>name:</td>
    <td><input type="text" id="name" name="name"/></td>
    </tr>
    <tr>
    <td>password:</td>
    <td><input type="text" id="password" name="password"/></td>
    </tr>
    <tr>
    <td></td>
    <td><input type="button" value="OK" onclick="save();"/></td> 
    </tr>
    </table>
    </form>
    </body>
    </html>
    <script type="text/javascript">
    function save(){
    if(checkData()){
    document.getElementById("ok").submit();
    }
    }
    function checkData(){
    var name = document.getElementById("name").value;
    var password = document.getElementById("password").value;
    if(name == ""){
    alert("Input you name!");
    return false;
    }
    if(password == ""){
    alert("Input you password!");
    return false;
    }
    return true;
    }
    </script>
      

  3.   

    当您的问题得到解答后请及时结贴.
    http://topic.csdn.net/u/20090501/15/7548d251-aec2-4975-a9bf-ca09a5551ba5.html
      

  4.   

    使用这种形式(兼容各个版本的浏览器)
    <input type="text" value="" onFocus="if(value==defaultValue){value='';}" onBlur="if(!value){value=defaultValue;}" />