我已经构建了一个jquery选项卡,如果其内容为空,则显示或隐藏选项卡按钮。
现在,由于页面加载,我只想在有人点击标签按钮时加载内容。
这是检查是否有内容的代码,如果为空则隐藏选项卡:
$j(function() {
if ($j.trim( $j("#CONTENTDIV").html()) == "") {
$j("li#TABBUTTON").hide();
}
});
如何在点击时加载内容,但如果没有内容则隐藏标签按钮?
答案 0 :(得分:2)
如果你想延迟加载标签的内容直到它被点击,那么你就不知道(点击之前)标签是否应该显示(有内容)或没有(没有)。
哲学上,您可以创建一个轻量级的AJAX函数,该函数请求一个(本质上)空页面,该页面只询问数据库字段中是否有任何值,如果有任何内容(而不是整个页面),则返回true。然后,点击后,您可以检索内容。
编辑:当然,这假定您可以在不检索整个页面的情况下检测到some value
。
即使资源请求必须检索整个数量,我相信服务器应该能够比将内容传递给用户更快地访问资源 - 特别是如果资源驻留在正在进行检查的同一台服务器。无论如何,由于它是在AJAX中完成的,因此您可以隐藏选项卡并显示它们($("#myTabID").show()
),因为轻量级AJAX函数可以发现可用内容。