jquery复杂选择器类+属性
我需要找到类为MyClass1的元素,它具有属性号。我的尝试是:jquery复杂选择器类+属性,jquery,jquery-selectors,Jquery,Jquery Selectors,我需要找到类为MyClass1的元素,它具有属性号。我的尝试是: $(".MyClass1[number=" + userId + "]") 但它不起作用。我的错在哪里 <tr class = "Myclass2"> <td> <a href="#" number="5" title="checkselector" class="MyClass1">blablabla=)</a> </t
$(".MyClass1[number=" + userId + "]")
但它不起作用。我的错在哪里
<tr class = "Myclass2">
<td>
<a href="#" number="5" title="checkselector" class="MyClass1">blablabla=)</a>
</td>
</tr>
这有两个方面:
你在匹配什么
如果您只是想知道它有一个属性,而不是设置为特定的值,请禁用=和值:
$(".MyClass1[number]")
它将匹配任何具有number属性的元素以及该行代码运行时存在的类MyClass1
从您的编辑中,听起来好像您正在尝试匹配特定的数字。假设userId包含12:
…那么您的代码就可以了:
$(".MyClass1[number=" + userId + "]")
…因为这意味着:
$(".MyClass1[number=12]")
可以在值周围加引号,但只有在值包含空格或其他几个非字母数字字符时才需要加引号。如果你知道它是一个数字,所以只包含数字,那么它们是不必要的
当你匹配它的时候
前面我说过,当代码行运行时,它会将任何元素与…匹配。这很重要。如果代码位于元素上方的脚本块中,它将找不到它,因为元素尚不存在:
<!-- Doesn't work -->
<script>
$(".MyClass1[number=12]").css("color", "green");
</script>
<!-- ... -->
<a href="#" number="12" title="@Resources.Appoint" class="MyClass1">Joe BLoggs</a>
…也可以缩短为:
$(function() {
// ...your code here...
});
这有两个方面:
你在匹配什么
如果您只是想知道它有一个属性,而不是设置为特定的值,请禁用=和值:
$(".MyClass1[number]")
它将匹配任何具有number属性的元素以及该行代码运行时存在的类MyClass1
从您的编辑中,听起来好像您正在尝试匹配特定的数字。假设userId包含12:
…那么您的代码就可以了:
$(".MyClass1[number=" + userId + "]")
…因为这意味着:
$(".MyClass1[number=12]")
可以在值周围加引号,但只有在值包含空格或其他几个非字母数字字符时才需要加引号。如果你知道它是一个数字,所以只包含数字,那么它们是不必要的
当你匹配它的时候
前面我说过,当代码行运行时,它会将任何元素与…匹配。这很重要。如果代码位于元素上方的脚本块中,它将找不到它,因为元素尚不存在:
<!-- Doesn't work -->
<script>
$(".MyClass1[number=12]").css("color", "green");
</script>
<!-- ... -->
<a href="#" number="12" title="@Resources.Appoint" class="MyClass1">Joe BLoggs</a>
…也可以缩短为:
$(function() {
// ...your code here...
});
您缺少以下引用:
$(".MyClass1[number='" + userId + "']")
您缺少以下引用:
$(".MyClass1[number='" + userId + "']")
您可以发布您试图从中选择的HTML吗?您确定userId的值正确吗?你所拥有的应该有用。也许可以分享更多的代码?number=userId-Uhm?哦,对不起@userId是它的asp。net@AntonKozlovsky:发布您匹配的HTML。number=@userid不是HTML,而是ASP。它实际上是一个数字吗?例如,number=42?您可以发布您试图从中选择的HTML吗?您确定userId的值正确吗?你所拥有的应该有用。也许可以分享更多的代码?number=userId-Uhm?哦,对不起@userId是它的asp。net@AntonKozlovsky:发布您匹配的HTML。number=@userid不是HTML,而是ASP。它实际上是一个数字吗?例如,number=42?除非ID中有空格或类似空格,否则不需要引号。除非ID中有空格或类似空格,否则不需要引号。对不起,有点不正确的问题=是数字5,例如抱歉,有点不正确的问题=是数字5,例如