在下面的代码中,我在一个选择框上设置了一个更改处理程序,以根据所选内容的值显示和隐藏一些后续问题。
此外,对于所选内容的某些值,还会显示一条额外的消息。
为了检查是否需要隐藏额外的消息,我保留了一个名为Prever的变量。在执行处理程序时,我会检查前一个是否为空或大小是否为0。
最好在空JQuery对象之前初始化,这样就不必额外检查NULL了。
执行$()将返回大小为1的对象。
有办法创建空的jQuery对象吗?
//Init function.
$(function(){
//Hold the previously selected object for the account type selection.
var Previous = null; //Here is where I would like to initialize.
//something like Previous = $();
$("SELECT[name='AccountType']").change(
function () {
//Hide Previous message if there was one.
if(Previous == null || Previous.size() > 0){
Previous.hide();
}
//Show the message if found and save it as previous.
Previous = $("#"+this.value+"_Msg").show();
//Get fisrt question
var FirstQuestion = $(".FirstQuestion");
if(this.value === ''){
FirstQuestion.hide();
}else{
//Manually show FirstQuestion.
FirstQuestion.show();
}
});
}
在最坏的情况下,我可以这样做:
var Previous = { size : function () { return 0; } };
但这似乎有点过火了。
发布于 2018-03-22 13:50:16
这将创建一个空jQuery对象:
$([])
最新情况:在新版本的jQuery(1.4+)中,可以使用:
$()
发布于 2018-03-22 14:29:33
$();
返回空集 从jQuery 1.4开始,调用
jQuery()
没有参数的方法会返回一个空的jQuery集(.length
属性为0)。在之前的jQuery版本中,这将返回一个包含文档节点的集合。
资料来源:api.jquery.com
https://stackoverflow.com/questions/-100007732
复制相似问题