2013-01-20 46 views
-3

问题是按下按钮时没有任何反应。问题现在已解决。 Javascript是区分大小写的,这就是它的原因。愚蠢的失败在我身边。程序失败 - html和javascript之间的错误连接?

 <script> 
     function calculate() { 
     var elev = document.getElementsByName("txt"); 

会这样做吗?但它不?怎么了?

    ... 
        <input type="text" name="txt" value="Insert name"><br/> 
        <input type="text" name="txt" value="Insert name"><br/> 
        <input type="text" name="txt" value="Insert name"><br/> 
        <input type="text" name="txt" value="Insert name"><br/> 
        <input type="text" name="txt" value="Insert name"><br/> 
        <input type="text" name="txt" value="Insert name"><br/> 
        <input type="text" name="txt" value="Insert name"><br/> 
        <input type="text" name="txt" value="Insert name"><br/> 
        <input type="text" name="txt" value="Insert name"><br/> 
        <input type="text" name="txt" value="Insert name"><br/> 
       </td> 
       <td> 
        <input type="text" name="txt" value="Insert name"><br/> 
        <input type="text" name="txt" value="Insert name"><br/> 
        <input type="text" name="txt" value="Insert name"><br/> 
        <input type="text" name="txt" value="Insert name"><br/> 
        <input type="text" name="txt" value="Insert name"><br/> 
        <input type="text" name="txt" value="Insert name"><br/> 
        <input type="text" name="txt" value="Insert name"><br/> 
        <input type="text" name="txt" value="Insert name"><br/> 
        <input type="text" name="txt" value="Insert name"><br/> 
        <input type="text" name="txt" value="Insert name"><br/> 

        ... 
    <input type="button" value="Calculate" onclick="Calculate(event)" /> 
     <script> 
     function calculate() { 
     var elev = document.getElementsByName("txt"); 
     for(i=0; i<elev.length; i++) { 
      elev[i].used = false; 
     } 

     for(j=0; j<elev.length; j++) { 
      var name1; 
      var name2; 
      var r = Math.floor(Math.random() * 20); 
      var k = Math.floor(Math.random() * 20); 

      if (elev[r].used) { 
       for(a=0; elev[a].used=true; a++) { 
        elev[a] = elev[r]; 
       } 
       } 
      if (elev[k].used) { 
       for(b=11; elev[b].used=true; b++) { 
        elev[b] = elev[r]; 
        if (b===11) { 
         b=0; 
        } 
       } 
      } 


      name1 = elev[r]; 
      name1.used = true; 
      name2 = elev[k]; 
      name2.used = true; 
      document.write(name1 + " og " + name2); 
     } 
    } 

     </script> 
     </body> 
    </html> 
+2

“它不工作”是不够的。请解释细节有什么问题。 – Macmade

回答

0

'的JavaScript' 是大小写敏感的。您将Calculate处理函数分配给onclick事件。

<input type="button" value="Calculate" onclick="Calculate(event)" /> 

但实际的功能名称是calculate(这是一个JS的不同功能)。

function calculate() { 

只是解决这个问题,代码应该工作。