如何选择具有特定值的所有元素并使用jquery更新值

时间:2019-07-07 14:02:09

标签: javascript jquery html

我想选择用户在运行时在输入字段中输入的具有特定值的所有输入元素,然后单击按钮来更新值,这是我试图实现的目的。

<input type="text" class="test" >
<button>
check value
</button>

var button = $("button")

button.on("click", function(){
      $("input[value='10']").val("100");
})

但是它不起作用here is link to the jsfiddle

3 个答案:

答案 0 :(得分:3)

您要寻找的是.each()

button.on("click", function(){
   $("input").each(function() {
      if($(this).val() == "10") {
          $(this).val("100");
        } 
   });
});

这将遍历所有输入并将值10的值设置为100

"[value='myValue']"选择器仅引用输入的初始属性值

答案 1 :(得分:1)

$("input[value='10']")是属性选择器。放置一些值不会设置value属性。

要执行此操作,您可以显式设置attr()的属性:

var button = $("button");
$("input[type=text]").on('input', function(){
  $(this).attr('value', $(this).val());
});

button.on("click", function(){
  $("input[value='10']").val('100');
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<input type="text" class="test">
<input type="text" class="test">
<button>
check value
</button>

答案 2 :(得分:0)

您正在选择当前值为10的所有输入,但是您的输入没有当前值。将其设置为10即可使用:

<input value="10" type="text" class="test" >