开发者

jQuery exception if element doesn't exist

I wor开发者_如何学Cking with jQuery and I need to get anytime and anywere exception (with any operation), if I attach some event or try to perform some action with elements (got from selector) that don't exist. Is there some internal "strict" mode in jQuery for this issue?


No, there isn't.

However, you could make a simple plugin for it:

$.fn.checkEmpty = function() {
    if (!this.length)
        throw new Error("No elements matched by " + this.selector);
    return this;
};

$('...').checkEmpty().bind(...);

Alternatively:

function $s() { return $.apply(this, arguments).checkEmpty(); }

$s('...').bind(...);


Check this post for ways to handle an "exists"

Exists in jquery


No, this is the beauty of jQuery.

You could create a wrapper function

function myjQuery() {
  var res = $.apply(this, arguments);

  if (!res.size()) {
    throw new Error("No elements matched :(");
  };

  return res;
};

myjQuery('input').each();

This won't mask empty sets returned by using find() or filter() and the like, but humm...

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜