获取当前选择器的值

时间:2017-10-27 21:34:38

标签: jquery

我使用以下选择器在jQuery中选择零个或多个元素:

$("input[type=tel]")

我想更改正在选择的特定DOM元素的值,因此我尝试使用:

$("input[type=tel]").val($(this).val().replace(/D/, ""));

但它删除了所有文本而不是非数字,这使得我假设$(this)指的是调用代码的元素(在我的例子中是一个调用onSubmit的表单)。

更新

我不想使用评论中建议的$ .each()方法,我可以通过使用内联函数找到解决方案,如下所示:

$('input[type="tel"]').val(function() {return $(this).val().replace(/\D/g, "");});

1 个答案:

答案 0 :(得分:2)

使用函数参数。它会在每个选定的元素上调用,并以当前值作为参数(因此您不需要调用$(this).val()),并将返回的值用作值。

$("input[type=tel]").val(function(oldval) {
    return oldval.replace(/\D/g, '');
});