Javascript onchange和onkeypress-javasrcipt-PHP

Javascript onchange和onkeypress-javasrcipt-PHP,javascript,php,Javascript,Php,我有一个输入,需要是数字和自动计算值输入。。 对于数字(onkeypress)运行良好,但对于自动计算(onchange)不起作用: echo "<td class='custGanjil300b border1'> <input type=\"text\" name=\"nilaiBobot[<?php echo [$i]; ?>]\" class=\"inputtable textCenter\&quo

我有一个输入,需要是数字和自动计算值输入。。 对于数字(onkeypress)运行良好,但对于自动计算(onchange)不起作用:

echo "<td class='custGanjil300b border1'> <input type=\"text\" name=\"nilaiBobot[<?php echo [$i]; ?>]\" class=\"inputtable textCenter\" 
                                            class=\"inputtable textCenter\" onkeypress=\"return mask(this,event);\" onchange=\"hitungtotal();\"  ></td>";
echo”
这行代码无法获取元素

请使用:

<input type=\"text\" name=\"nilaiBobot\" ...

谢谢你的回答,我只是想改变一下,但还是不行:(你不应该在PHP ECHO函数中使用
)。
<script>
   function mask(textbox, e) {

  var charCode = (e.which) ? e.which : e.keyCode;
  if (charCode == 46 || charCode > 31&& (charCode < 48 || charCode > 57)) 
     {
        alert("Please input numeric characters only");
        return false;
     }
 else
     {
         return true;
     }
   }
 </script>
<script type="text/javascript">
function hitungtotal() {
var elems = document.getElementsByName('nilaiBobot');
var sum = 0;     
for(var i =0;i<elems.length;i++){
sum+=parseInt(elems[i].value)
}
document.getElementById('total').value  = sum;

}
var elems = document.getElementsByName('nilaiBobot[]');
<input type=\"text\" name=\"nilaiBobot\" ...
var elems = document.getElementsByName('nilaiBobot');