javascript 在JQuery中向输入字段追加值

kokeuurv  于 2022-12-25  发布在  Java
关注(0)|答案(5)|浏览(262)

我有一个input type="tel"id="#enter",我想通过单击按钮添加附加值。

$("#one").click(function () {
    $("#myInput").val("1");
});
$("#two").click(function () {
    $("#myInput").val("2");
});

因此,每次按下#id 1-9中的按钮时,都会输入相应的数值。
然而,这并没有在输入字段类型中追加值,只是用单击按钮的值替换现有值。它如何追加值?
这是JSFiddle

ha5z0ras

ha5z0ras1#

您可以使用类似下面的代码来追加值:

$("#myInput").val(function() {
    return this.value + '1';
});

您还可以通过为每个数字按钮指定一个类并为所有按钮注册相同的事件侦听器来改进方法。例如:

$(".dial").click(function () {
    var number = $(this).data('number');
    $("#myInput").val(function() {
        return this.value + number;
    });
});

其中按钮将定义为

<button type="button" class="btn btn-primary btn-xs1 dial" data-number="4"> <b>GHI<br>4

以此类推。

演示:http://jsfiddle.net/8R9xL/2/

k75qkfdt

k75qkfdt2#

试试这个

$("#one").click(function(){
    $("#myInput").val($("#myInput").val()+"1");
});
monwx1rj

monwx1rj3#

当然,它不会追加值,您没有做任何事情来使它追加值。
要追加值,你必须...追加值。获取当前值,添加(追加)一些东西到它,然后设置它。

$("#one").click(function(){
    var input = $("#myInput");
    input.val(input.val() + "1");
}); 
$("#two").click(function(){
    var input = $("#myInput")
    input.val(input.val() + "2");
});
vm0i2vca

vm0i2vca4#

$("#one").click(function(){
    var input = $("#myInput");
    input.val(parseInt(input.val() + 1));
}); 
$("#two").click(function(){
    var input = $("#myInput")
    input.val(parseInt(input.val() + 2));
});
qnakjoqk

qnakjoqk5#

我做过类似的事。

$('.pin-number').on('click', (e) => {
  $('#pin').val($('#pin').val() + e.target.innerText)
})

其中.pin-number是一组div,包含0到9之间的数字(这就是我使用e.target.innerText而不是e.target.value的原因),#pin是插入值的输入。
希望这有帮助!

相关问题