有没有一种简单的方法可以检查给定的选择器字符串是否只指向一个元素
is there a simple way to check if given selector string point to only one element?
示例
$('div.mydiv').checkifonlyone().css('background-color', 'red');
或者
$('div.mydiv').filter(':checkifonlyone').css('background-color', 'red');
我希望文档中只有一个div包含该类,否则应该显示一个错误消息并停止执行脚本?
可能看起来像:
$('div.mydiv:eq(0)').css('background-color', 'red');
如果存在多个元素,则该元素将始终选择第一个元素。
或
var $mydiv = $('div.mydiv');
if($mydiv.length === 1) {
$mydiv.css('background-color', 'red');
}
只有当选择器上只有一个匹配项时,才会改变背景颜色。
你可以自己做:
if ($(something).length !== 1)
//Waaaah!
var myDivs = $('div.mydiv');
if(myDivs.length === 1)
{
myDivs.css('background-color', 'red');
}
if ( $('div.mydiv').length == 1 ) ....
在找那个?请记住,jQuery元素是由大多数函数迭代的匹配数组(或者弹出顶部元素)。
您需要size()函数。
它将返回选择器中的元素数,然后您可以相应地对结果进行操作。
根据您的标记,您可能可以使用:only-child
选择器,但可能需要执行以下操作:
var $myDiv = $('div.mydiv');
if ($myDiv.length == 1) $myDiv.css('background-color', 'red');
相关文章:
- 如何检查两个字符串是否具有相同的字符,包括特殊字符
- 如何在 AngularJS 中检查字符串是否为空
- $.ajax 检查返回字符串是否为“错误”
- 检查字符串是否在字典内的数组中
- 检查字符串是否包含计算
- 验证字符串是否仅包含 javascript 中的某些字符
- 检查字符串是否等于一个单词和一个数字
- 如何检查字符串是否包含非英语字符列表
- 检查字符串是否包含数组中的某个字符串
- 检测字符串是否与格式说明符字符串匹配
- 如何在javascript中测试字符串是否包含带正则表达式的数字
- 如何检查字符串是否为回文JavaScript〔CLOSED!〕
- 检查字符串是否为有效的html标记
- 检查用户输入的字符串是否准确
- Javascript正则表达式,用于检查字符串是否为有效数字
- 使用AngularJS和Angular Translate如何检查字符串是否已被翻译
- If.else语句检查NaN和空字符串是否在JavaScript中不起作用
- Javascript Regex检查字符串是否包含不属于的单词
- 检查长度为5的子字符串是否在另一个字符串中(已重构)
- 如何检查 NS 字符串是否包含 javascript 函数