Javascript jQuery函数$(';#myelement';)是做什么的?
以下代码的作用是什么:Javascript jQuery函数$(';#myelement';)是做什么的?,javascript,jquery,Javascript,Jquery,以下代码的作用是什么: $('#myelement')。是('*') 星号表示什么?由于只有一个元素,#myelement,我不明白使用is(),检查一个元素是否与一组元素匹配的意义是什么?这是一种严重的存在JavaScript $('#myelement').is('*') 只要#myelement不存在,它就会失败,否则返回true。 至少从我对它的理解以及我如何使用它来看,它做得很好。无论调用什么,都返回true或false 例如,我有一个复选框,我希望在通过AJAX提交表单之前确保选中
$('#myelement')。是('*')
星号表示什么?由于只有一个元素,
#myelement
,我不明白使用is()
,检查一个元素是否与一组元素匹配的意义是什么?这是一种严重的存在JavaScript
$('#myelement').is('*')
只要#myelement
不存在,它就会失败,否则返回true。
至少从我对它的理解以及我如何使用它来看,它做得很好。无论调用什么,都返回true或false
例如,我有一个复选框,我希望在通过AJAX提交表单之前确保选中该复选框
if( $('input#tosCheck').is(':checked') ){
/*its checked submit form*/
}else{
alert('Error');
}
总之,jQuery中指向API的链接比我所能做的更好地描述了它,但我想至少分享一个使用示例,以帮助您了解一些想法。基本上检查元素是否存在。不是最好的方法…
是检查元素是否符合标准。在这种情况下,“*”
表示所有元素。
因此,如果前面的选择器返回任何内容,它只返回true
请看这里的一个例子:我不能说我以前见过使用jQuery代码,但它似乎不是检查元素存在性的好方法。由于*
是通用选择器,因此如果#myelement
存在,则相关表达式将始终返回true
,否则将返回false
我认为这是一种检查元素存在性的“糟糕”方法,因为您只需检查jQuery对象的长度即可:
$('#myelement').length > 0
我没有做过任何测试,但我认为上面的测试速度更快,因为它没有is()
函数调用的开销。the*是通用选择器。我想你们不明白。。。他不是问jQuery.is做什么。他在问。is(“*”)做什么。好吧,我咬一口。如果(document.getElementById('myelement')可以很容易地用替换,那么说很难吗$(“#myelement”).length
,我想是的。这很糟糕,因为它永远不会返回false,只要抛出一个TypeError
。啊,@pinvdb从前面的评论中给出了很好的建议。我最终删除了我建议的方法(类似于@raina77ow),因为你也不能在null上调用.length
,所以我们犯了与此代码作者相同的错误。空数组在JS中确实是真实的,但是[]==false//true
。我爱JS…@editor检查一下,看看它的表现如何。)如果($(“#mydiv”).length>0){//do stuff}认为您的意思是$('#myelement').length>0