如何获取空JQuery对象?

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (45)

在下面的代码中,我在一个选择框上设置了一个更改处理程序,以根据所选内容的值显示和隐藏一些后续问题。

此外,对于所选内容的某些值,还会显示一条额外的消息。

为了检查是否需要隐藏额外的消息,我保留了一个名为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; } };

但这似乎有点过火了。

提问于
用户回答回答于

这将创建一个空jQuery对象:

$([])

最新情况:在新版本的jQuery(1.4+)中,可以使用:

$()
用户回答回答于
$();

返回空集 从jQuery 1.4开始,调用jQuery()没有参数的方法会返回一个空的jQuery集(.length属性为0)。在之前的jQuery版本中,这将返回一个包含文档节点的集合。

资料来源:api.jquery.com

扫码关注云+社区