我需要 $('.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>
最佳答案
您需要将 x
变量附加到字符串:
$(".mk[value='" + x + "']").each(function(key, value)
此外,您应该注意 value
不是 span
的有效属性,因此此代码会导致验证问题。
关于选择器中的 jQuery 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10075896/