在html文本框上显示javascript变量

时间:2013-10-11 07:27:26

标签: javascript html forms

我所要做的就是在文本框中显示一个数字,然后在每次按下时添加10,这里是我的代码(它不起作用)。

<head>
    <script type="text/javascript">
    var n=parseInt(ocument.forms["formNum"]["numero"].value);
    document.getElementById("numero").value=n;

    function sumar() {
        n=document.forms["formNum"]["numero"].value+10;
        document.forms["formNum"]["numero"].value=n;
    }

    function inicializar() {
        n=document.forms["formNum"]["numero"].value=0;
    }
    </script>
</head>

<body>
    <form name="formNum">
        <p>
            <input type="text" size="10" name="numero" id="numero" />
        </p>

        <p>
            <input type="button" name="sumar" value="Sumar" onclick="sumar()" />
            <input type="button" name="inicializar" value="Iniciar a 0" onclick="inicializar()" />
        </p>
    </form>
</body>

4 个答案:

答案 0 :(得分:3)

<body>
    <script type="text/javascript">
       function sumar(){
           document.getElementById("numero").value = parseInt(document.getElementById("numero").value)+10;
       }

       function inicializar(){
           document.getElementById("numero").value=0;
       }
    </script>

    <form name="formNum">
        <p>
            <input type="text" size="10" name="numero" id="numero" value="0" />
        </p>

        <p>
            <input type="button" value="Sumar" onclick="sumar()" />
            <input type="button" value="Iniciar a 0" onclick="inicializar()" />
        </p>
     </form>
</body>

五个建议。

  1. 最好为您的html元素提供唯一ID。
  2. 永远不要将HTML元素和javascript函数命名为相同。
  3. 如果您想从javascript访问html元素,如果您知道该ID,请使用getElementById
  4. 使用浏览器中的Firebug或Developer工具进行调试。
  5. 如果您想使用层次结构访问您的元素,请使用elements之类的表单中的document.forms["formNum"].elements["numero"].value。请查看此example
  6. 演示http://jsfiddle.net/DPJCR/

答案 1 :(得分:0)

此代码应该有效:

<input type="text" id="mytext">

<script type="text/javascript">
   var elem = document.getElementById("mytext");
   elem.value = "My default value";
</script>

请参阅:Set the value of an input field

也许您从parseInt获得了一个例外,以防止值发生变化。

答案 2 :(得分:-1)

如果是使用jQuery的选项,请尝试以下操作:

function sumar(){
    $("#numero").attr("value", parseInt($("#numero").attr("value"), 10)+10);
}

答案 3 :(得分:-1)

试试这个会帮到你

var count=10;
$('#btnSumar').click(function(){
              if($('#numero').val()=='')
              {
                  $('#numero').val(count);
              }else

           $('#numero').val(eval($('#numero').val())+count);    

                     });
$('#btnInc').click(function(){
    $('#numero').val('');});

小提琴here