选择器中的jQuery变量

Ray*_*Lin 3 html jquery

我需要$('.mk[value=x]')工作,但它确实$('.mk[value=1]')没有.请有人帮忙

<body>
<span class="mk" value="1">1</span>
<span class="mk" value="1">1</span>
<span class="mk" value="3">3</span>
<input id="update" type="button" value="1" />
</body>

<script type="text/javascript">
$('#update').click(function(){
    var x = this.value //--> x =1 
       $('.mk[value=x]').each(function(key, value) { //--> NOT WORKING !
       $('.mk[value=1]').each(function(key, value) { //--> WORKING !
       $(this).replaceWith('<span class="mk" value="2">2</span>')
       });
    })
</script>
Run Code Online (Sandbox Code Playgroud)

Ror*_*san 7

您需要将x变量附加到字符串:

$(".mk[value='" + x + "']").each(function(key, value)
Run Code Online (Sandbox Code Playgroud)

此外,您应该注意,value它不是有效属性span,因此此代码将导致验证问题.