点击按钮后增加计数器值

时间:2013-07-14 14:06:06

标签: javascript jquery

我似乎无法获得我需要工作的jQuery位。我之前从未使用过jQuery,但是我希望在我的页面上有一个按钮,当单击时,将最初的0值增加1。我的问题与jQuery - Increase the value of a counter when a button is clickedpress button and value increases in text box类似,但我无法理解我做错了什么。这就是我所拥有的:

<html>
<head>
<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.3.min.js"></script>
<script type="text/javascript">
$("#update").click(function()
{
    $("#counter")++;
}
</script>
</head>
<body>

<input type="text" name="TextBox" id="TextBox" value="0" />
<input type="Button" id='AddButton' value="+" />
<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.3.min.js"></script>
<script type="text/javascript">
$('#AddButton').on('click', function ()
{
    var input = $('#TextBox');
    input.val(parseInt(input.val()) + 1);
})
</script>

</body>
</html>

非常感谢任何帮助。请原谅任何巨大的明显错误,我不知道如何做到这一点。谢谢,快乐的消息! =)

4 个答案:

答案 0 :(得分:6)

很明显你是jQuery的新手,所以好的阅读可能对你有所帮助,我建议 Head First jQuery

至于问题,我重写了你的代码,这就是它应该是什么样的:

<!DOCTYPE html>
<html>
    <head>
        <title> My first increment </title>
    </head>
    <body>

        <input type="text" name="TextBox" id="TextBox" value="0" />
        <input type="Button" id='AddButton' value="+" />

        <script src="http://code.jquery.com/jquery-1.4.3.min.js"></script>
        <script>
            $(document).ready(function(){
                $('#AddButton').click( function() {
                    var counter = $('#TextBox').val();
                    counter++ ;
                    $('#TextBox').val(counter);
                });
            });
        </script>
    </body>
</html>

这是一个小测试:test me

这个想法是增加一个变量而不是一个对象,你也有一些语法错误,但尝试这个代码,我们可以在评论上进一步讨论它。

祝你好运。

答案 1 :(得分:2)

(这只是对其他答案的补充)

您只需要在 之前加载 所有其他js src

<script type="text/javascript" src="http://code.jquery.com/jquery-1.4.3.min.js"></script>

这是一个非常古老的jquery版本。您可以找到最新的here

几乎所有的jQuery代码都应该包含在

$(document).ready(function(){

});

一直这样做,直到你找到一个不是纯jQuery的罕见理由。

假设永远不能从最后一个计数器更改$('#TextBox'),您可能会喜欢:

$('#TextBox').val(0);
$('#AddButton').click( function() {
    $('#TextBox').val(parseInt($('#TextBox').val()) + 1);
});

但是如果您希望用户更改TextBox,请在AddButton点击时设置回增量计数器,假设counter应从0开始:

counter = 0;
$('#AddButton').click( function() {
    counter++;
    $('#TextBox').val(counter);
});

答案 2 :(得分:0)

应该是:

var counter = 0;
$("#update").click(function()
{
    counter++;
});

演示 here

如果counter是一个变量,你需要定义它(var counter;),你也忘了关闭点击“)”。最后请注意额外的)。你正在做的是增加一个jQuery对象(好主意解释Ohgodwhy)。

如果你想要的是将值放在另一个字段中(现在我猜一点),就像输入字段一样,你可以这样做:

var val;
$("#update").click(function()
{
   val = $('#counter').val();
   val++;
   $('#counter').prop('value',val )
});

演示 here

答案 3 :(得分:0)

这可以通过使用普通的html和JS,并在下面附加代码来完成

<b>
<button id="btn" onclick="this.innerHTML=++this.value" value=0 >0</button>
</b>