输入一个长串的字符比如 4dsde8d*sd457ds8 里面有一个或者两个 " * "
要做的就是吧这个'*' 用0-9 加上a-f 来代替 
每个*必须包含一个数字跟一个字母有兴趣的朋友帮我写下,最好能用javascript写个输入框呵呵

解决方案 »

  1.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    <script type="text/javascript">
    function change(a){
    var x=[1,2,3,4,5,6,7,8,9,0,'a','b','c','d','e','f'];
    var reg=/\*/g;
    var reg2=/\*/;
    var s=a.value.match(reg);
    for(var i=0;i<s.length;i++){
    var m=x[parseInt(Math.random()*10)]+""+x[10+parseInt(Math.random()*6)];
    a.value=a.value.replace(reg2,m);
    }
    }
    </script>
    </head><body>
    <input type="text" onblur="change(this)">
    </body>
    </html>
    这样试试
      

  2.   

    楼主可以看下,是不是符合你的要求~~~<!DOCTYPE>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>无标题文档</title>
    <script type="text/javascript">
    function smallGame(text){
    var number = [0,1,2,3,4,5,6,7,8,9];
    var charValue = ['a','b','c','d','e','f'];
    if(/\*|×/.test(text.value)){
    text.value = text.value.substring(0,text.value.length - 1) + number[parseInt(Math.random()*10)] + "" + charValue[parseInt(Math.random()*6)];
    }
    }
    </script>
    </head><body>
    <input type="text" onKeyup="smallGame(this);">
    </body>
    </html>