Fork me on GitHub

Programming Design Notes

jQuery 判斷指定原素是否存在

| Comments

相信各位也知道 jQuery 是可以 function 接 function 的,就像以下例子。
$("div").find("a").attr("href", "http://www.google.com").css("color", "#f00");

jQuery 所有 function 也會返回 jQuery Object,所以不能用以下例子判斷指定原素是否存在。
if ($("div").find("a") != null) 
$("div").find("a").attr("href", "http://www.google.com").css("color", "#f00");
else
alert("Element not found.");
以上例子永遠也不會執行到 alert("Element not found."); 。

而判斷指定原素是否存在要用以下例子。
if ($("div").find("a").length > 0) 
$("div").find("a").attr("href", "http://www.google.com").css("color", "#f00");
else
alert("Element not found.");

length 為找到的元素數目。length 為 0 時,即找不到指定元素,

使用 size() 這個 function 一樣可以:
if ($("div").find("a").size() > 0) 
$("div").find("a").attr("href", "http://www.google.com").css("color", "#f00");
else
alert("Element not found.");

相關書籍: jQuery 1.4 Reference GuidejQuery in Action, Second EditionjQuery Cookbook: Solutions & Examples for jQuery Developers (Animal Guide)