我有一个用PHP编写的注册表单。每组问题都在一个字段集中。页面加载时显示为打开的字段集为#are_you,它会关闭该字段集并在收到响应后移至下一组问题。
我想控制页面加载时打开哪个字段集。如果我的字段集#additional_login(在div #advertise_form中)存在,我希望该字段集显示为打开而不是#are_you。如果未设置#additional_login,我希望#are_you显示为打开状态。 #additional_login对用户的出现由PHP if(isset())条件控制。
我不熟悉jQuery(对不起!)所以当我尝试应用其他SO问题的if条件时,我很挣扎。使#are_you显示为打开的代码行使用此语法在.js文件中编写:
jQuery('#advertise_form fieldset#are_you').fadeTo(250, 1, 0).removeClass('close');
有人可以告诉我如何实现这一目标吗?提前谢谢!
答案 0 :(得分:1)
if ($('#additional_login').length) {
$('#additional_login').fadeIn();
} else {
$('#are_you').fadeIn();
}
答案 1 :(得分:1)
您可以使用length
:
if (jQuery('#additional_login').length) {
jQuery('#additional_login').addClass('open');
jQuery('#are_you').addClass('close');
} else {
jQuery('#are_you').addClass('open');
}
答案 2 :(得分:0)
我使用这个配方:
$(document).ready(function(e){ //on page ready
if ($(element).length) { //object contains elements
//Do what you need to do when element exists
}
});
.length返回jQuery对象中的元素数,因此它将是一个数字(true)或0(false)