首页 > 解决方案 > 如何按值选择其值包含加号的元素?

问题描述

这是我需要选择的元素:

<select>
    <option value="CSS326-24G-2S+RM">CSS326-24G-2S+RM</potion>
</select>

这是我的选择器代码:

var value = "CSS326-24G-2S+RM";
$("option[value="+value+"]").val('selected');

但它不选择 tat 元素。由于+在 jQuery 选择器中具有特定含义。无论如何,在选择器中使用它时如何转义该value变量$()

$(function(){
  var value = "CSS326-24G-2S+RM";
  $("option[value="+value+"]").val('the element is selected');
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select>
    <option value="CSS326-24G-2S+RM">CSS326-24G-2S+RM</potion>
</select>

标签: javascriptjqueryhtml

解决方案


实现这一点的最简单方法是两种简单地将属性选择器中的值用引号括起来:

$(function(){
  var value = "CSS326-24G-2S+RM";
  $('option[value="' + value + '"]').val('the element is selected');
})
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select>
    <option value="CSS326-24G-2S+RM">CSS326-24G-2S+RM</option>
</select>


推荐阅读