<!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 runat="server"> 
    <title>无标题页 </title> 
</head> 
<script type="text/javascript" language="javascript"> 
var test = 0;
var test2 = 0;
 function set1(obj,maxi,demo) 

    if (obj=="clear"){
        document.getElementById(demo).value="";
        eval(demo +="= 0;")
        return;
    };
    eval(demo + "++");
    if(eval(demo) >= maxi) {alert("最多只能选择"+(maxi-1)+"个");return;} 
    document.getElementById(demo).value += obj + "/"; 

</script> 
<body> 
<form id="form1" > 
 
        <input type="text" value=""  name="test" id="test"/>
        <input type="text" value="234/455/"  name="test2" id="test2"/>
  &nbsp;&nbsp;&nbsp;
      <select name="select" id="select" onchange="set1(this.options[this.selectedIndex].value,3,'test')">
        <option value="">专业领域2</option>
        <option value="123">123</option>
        <option value="234">234</option>
        <option value="456">456</option>
        <option value="789">789</option>
        <option value="clear">清空重选</option>
  </select>
  <select name="select2" id="select2" onchange="set1(this.options[this.selectedIndex].value,4,'test2')">
        <option value="">专业领域3</option>
        <option value="123">123</option>
        <option value="234">234</option>
        <option value="456">456</option>
        <option value="1111">1111</option>
        <option value="2222">2222</option>
        <option value="33333">33333</option>
        <option value="789">789</option>
        <option value="aaa">aaa</option>
        <option value="clear">清空重选</option>
  </select>
</form> 
</body> 
</html> 文本框为空时 上面的运行正常
但如果文本本身就已经有了值 例如第二个文本框,此时就要先做下判断,再决定是否可以添加值 
我想添加
//ttt=document.getElementById(demo).value.split('/')[maxi-2] 
//if (ttt!=""){alert("你已经选择了"+(maxi-1)+"个");return;} 但是不行
还有
eval(demo +="= 0;")和 
eval(demo + "++"); 
是什么意思啊,我看不懂?往高手指点

解决方案 »

  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 runat="server"> 
        <title>无标题页 </title> 
    </head> 
    <script type="text/javascript" language="javascript"> 
    function set1(obj,maxi,demo) 

        if (obj=="clear"){
            document.getElementById(demo).value="";
            return;
        };
        var sVal = document.getElementById(demo).value;
        var aItem = sVal.split("/");
        if(aItem.length >= maxi) {alert("最多只能选择"+(maxi-1)+"个");return;} 
        document.getElementById(demo).value += obj + "/"; 

    </script> 
    <body> 
    <form id="form1" > 
     
            <input type="text" value=""  name="test" id="test"/>
            <input type="text" value="234/455/"  name="test2" id="test2"/>
      &nbsp;&nbsp;&nbsp;
          <select name="select" id="select" onchange="set1(this.options[this.selectedIndex].value,3,'test')">
            <option value="">专业领域2</option>
            <option value="123">123</option>
            <option value="234">234</option>
            <option value="456">456</option>
            <option value="789">789</option>
            <option value="clear">清空重选</option>
      </select>
      <select name="select2" id="select2" onchange="set1(this.options[this.selectedIndex].value,4,'test2')">
            <option value="">专业领域3</option>
            <option value="123">123</option>
            <option value="234">234</option>
            <option value="456">456</option>
            <option value="1111">1111</option>
            <option value="2222">2222</option>
            <option value="33333">33333</option>
            <option value="789">789</option>
            <option value="aaa">aaa</option>
            <option value="clear">清空重选</option>
      </select>
    </form> 
    </body> 
    </html>