javascript计算器显示文本框

javascript计算器显示文本框,javascript,Javascript,为什么我的脚本不起作用?我觉得问题可能与浏览器有关。它在chrome或IE中不起作用 我的代码如下。我已经做了一段时间了,我不明白为什么它不起作用 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=iso- 8859-1"> <title>Untitled Document</title> <link r

为什么我的脚本不起作用?我觉得问题可能与浏览器有关。它在chrome或IE中不起作用

我的代码如下。我已经做了一段时间了,我不明白为什么它不起作用

<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-  8859-1">
    <title>Untitled Document</title>
    <link rel="stylesheet" href="calc.css">

    <script type="text/javascript" >//src="calc.js">

      function displayVal(val){
        //document.getElementById("disp").value=val;
        $(document).ready(function(){
          $('b').onclick(function(){
            $('display').value=val;
          });
        });
      }

    </script>
  </head>
  <body>
    <form name="myDocument" id="myForm">
      <input type="text" name="display" id="display" value=""/>
      <input type="button" name="buttons" value="1" />
      <input type="button" name="buttons" value="2" />
      <input type="button" name="buttons" value="3" /></br>
      <input type="button" name="buttons" value="+" />
      <input type="button" name="buttons" value="=" />
    </form>

  </body>
</html>

无标题文件
//src=“calc.js”>
函数显示值(val){
//document.getElementById(“disp”).value=val;
$(文档).ready(函数(){
$('b').onclick(函数(){
$('display')。value=val;
});
});
}


我能看出的主要原因当然是,您没有添加jQuery:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>
根本没有
元素

这是完全错误的:

$('display').value=val;
应该是:

$("#display").val(val);
不仅是上面的错误,而且除了上面的错误,还有很多

  • 没有
    元素来调用它
  • 所有的
    都有相同的名字,我不明白作为一个“计算器”这有什么帮助
  • 没有与按钮关联的
    单击事件
  • 您不需要
    displayVal()
    函数
  • jQuery的
    $。单击
    函数,而不是
    onclick
  • 总之,您提供的HTML毫无价值,只是一个图像。这将是一个更好的替代方案

    <html>
      <head>
        <script src="https://code.jquery.com/jquery-1.9.1.js"></script>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
        <title>Calci</title>
        <script type="text/javascript">
            $(document).ready(function (){
              var oldVal = 0;
              var op = "";
              // n - number
              // o - operation
              $('.n').click(function () {
                $('#display').val($('#display').val() + $(this).val());
              });
              $(".o").click(function () {
                if ($(this).val() == "+") {
                  if (op == "+")
                    oldVal = parseInt(oldVal) + parseInt($('#display').val());
                  else
                    oldVal = parseInt($('#display').val());
                  $('#display').val("");
                  op = "+";
                } else {
                  if (op == "+")
                    oldVal = parseInt(oldVal) + parseInt($('#display').val());
                  else
                    oldVal = parseInt($('#display').val());
                  $('#display').val(oldVal);
                }
              });
            });
        </script>
      </head>
      <body>
        <form name="myDocument" id="myForm">
          <input type="text" name="display" id="display" value="" /><br />
          <input type="button" class="n" value="1" />
          <input type="button" class="n" value="2" />
          <input type="button" class="n" value="3" /><br />
          <input type="button" class="o" value="+" />
          <input type="button" class="o" value="=" />
        </form>
    
      </body>
    </html>
    
    
    

    $(函数(){
    $(文档).ready(函数(){
    var x=“”;
    $('[name=“buttons”]')。单击(函数(){
    //log($('[name=“buttons”]').val());
    x+=$(this.val();
    $(“#显示”).val(x);
    });
    });
    });
    
    
    计算器
    

    代码不完整。您没有添加jQuery.ok。我改变了
    还是不行。哇。你认为这是错误的吗?老板,看看我的答案。我不知道displayVal()实际上在哪里被调用。我在使用javascript的jQuery中做了一些更改,现在我的脚本是//src=“calc.js”>函数displayVal(val){document.getElementById(“display”).value=val;},然后我调用这个函数,它不做计算
    <html>
      <head>
        <script src="https://code.jquery.com/jquery-1.9.1.js"></script>
        <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
        <title>Calci</title>
        <script type="text/javascript">
            $(document).ready(function (){
              var oldVal = 0;
              var op = "";
              // n - number
              // o - operation
              $('.n').click(function () {
                $('#display').val($('#display').val() + $(this).val());
              });
              $(".o").click(function () {
                if ($(this).val() == "+") {
                  if (op == "+")
                    oldVal = parseInt(oldVal) + parseInt($('#display').val());
                  else
                    oldVal = parseInt($('#display').val());
                  $('#display').val("");
                  op = "+";
                } else {
                  if (op == "+")
                    oldVal = parseInt(oldVal) + parseInt($('#display').val());
                  else
                    oldVal = parseInt($('#display').val());
                  $('#display').val(oldVal);
                }
              });
            });
        </script>
      </head>
      <body>
        <form name="myDocument" id="myForm">
          <input type="text" name="display" id="display" value="" /><br />
          <input type="button" class="n" value="1" />
          <input type="button" class="n" value="2" />
          <input type="button" class="n" value="3" /><br />
          <input type="button" class="o" value="+" />
          <input type="button" class="o" value="=" />
        </form>
    
      </body>
    </html>