我有一个HTML元素,现在我必须使用使用jQuery或javascript的数据属性来选择包含双引号或单引号的元素。
jQuery('.test-sp[data-value=""test"]').trigger('click');<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<span data-value=""test">Test lppp</span>
我的数据值是"test。我需要使用包含引号的值的数据属性来选择div/span。
发布于 2020-12-28 13:02:28
在字符串“之前使用\”。
<span data-value="\"test">Test lppp</span>发布于 2020-12-28 13:06:41
您可以通过为元素提供特定的类或它们的位置来使元素更加具体,并在JavaScript中搜索元素。可以访问元素的dataset属性。
<ul>
<li data-value="random">1</li>
<li data-value="word">2</li>
<li data-value="test">3</li>
</ul>
<script>
// Or some other class to target them
const elements = document.querySelectorAll('ul > li');
for (let i = 0; i < elements.length; i += 1) {
const el = elements[i];
if (el.dataset.value === 'test') {
// This is the element you are looking for!
}
}
</script>发布于 2020-12-28 13:52:38
将html中的数据属性和单引号中的脚本标记的值包装起来。如果使用单引号来结束值,它将接受带有引号的值。
对于单击事件,您必须使用脚本标记中的反斜杠来转义data-属性的值。
我在脚本中使用一个变量从span标记中获取数据属性,它具有双引号的值,您也可以传递单引号。起作用了。
这是工作代码。
var dattrvalue = $(".spn").attr("data-value");
$("span[data-value='" + dattrvalue + "']").click(function(event) {
$("#para").html("Hurray!");
});<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<span class="spn" data-value='"test'>Click Me</span>
<p id="para">This is a paragraph tag!</p>
https://stackoverflow.com/questions/65477991
复制相似问题