我正在一个由用户组成的项目中,我正在查询一个SQL数据库以回显所有用户,现在我已经对所有样式进行了样式设置,并且每个用户旁边都有一个输入元素,其起始值为零,并且有两个按钮一个使输入元素的值分别增加(#up)和减少(#down)。因此这两个按钮充当微调框,我也想为输入元素设置最小值5和最大值500。

我已经尝试了许多“ onclick”功能,但都无济于事……我尝试使用“ GetElementById”,但这只会更改第一个用户的输入元素的值,我知道这是因为IDso,所以我该怎么办改变这个

请所有帮助表示赞赏。我是一个初学者,所以如果我犯了一个错误,请纠正我,而不是低估。
谢谢。

这是HTML:

               <span class = 'username'>".$row['username']."</span>
               <form name = 'matchcreator' id='amount' action='arena.php' method ='post'>
               <input  name = 'm-maker' type = 'text' id='price'  maxlength = '15' value='0'/>
               <button id='up' type ='button' ><img src='images/up.png'  width='10px' height='10px' href='#'> </button>
               <button id='down' type ='button' '><img src='images/down.png' width='10px' height='10px' href='#'></button>
                </form>

最佳答案

您可以按照David Cash的建议进行操作,并利用带有内置微调器的HTML5输入元素,也可以从上/下箭头以及输入元素本身中删除ID。它看起来如下所示:

的HTML

    <span class = 'username'>".$row['username']."</span>
    <form name = 'matchcreator' id='amount' action='arena.php' method ='post'>
        <input  name = 'm-maker' type = 'text' class='price'  maxlength = '15' value='0'/>
        <button class='up' type ='button'><img src='images/up.png'  width='10px' height='10px' href='#'> </button>
        <button class='down' type ='button'><img src='images/down.png' width='10px' height='10px' href='#'></button>
    </form>
<script src="https://code.jquery.com/jquery-2.2.0.min.js"></script>
<script>
    $(function () {
    $(".up").on("click", function () {
        var trigger = $(this);
        var input = trigger.prev();
        if (Number(input.val()) < 500) {
            input.val(Number(input.val()) + 1);
        }
        else { alert("max value reached"); }
    });
    $(".down").on("click", function () {
        var trigger = $(this);
        var input = trigger.prev().prev();
        if (Number(input.val()) > 5) {
            input.val(Number(input.val()) - 1);
        }
        else { alert("min value reached"); }
    });
    }
</script>

07-27 15:41