jquery下拉菜单显示不出来?
一、问题描述
做下拉菜单时,不管怎么触发事件,下拉菜单都不显示。console一下,发现其display一直是none。
.second>li{ width: 300px; height: 30px; list-style: none; background-color: grey; color: #fff; border-bottom: .5px #fff solid; /*页面刷新时不显示,触发事件后显示*/ display: none; }
二、问题发现
原因是因为,“display: none;”放错地方了,跟li放一起。但事件触发的是父元素ul,所以无法更改其displaynone属性。
三、解决
/*display: none;单独放出来,不要跟li放一起*/ .second{ display: none; }
新开一个块控制父级元素,用对应的展开/收起动画控制即可。
jquery如何将后台数据循环添加进下拉框?
<select id=”select”>
<!–下拉框数据动态加载–>
</select>
$(document).ready(function () { //此处页面打开即请求api
$.ajax({
type:’GET’,
url:”{:url(‘Room/houseData’)}”,
contentType: “application/json; charset=utf-8”,
async : true ,
dataType: “json”,
success: function (date) {
var optionstring = “”;
for (var j = 0; j < date.length;j++) {
console.log(date[j].house_name);
console.log(date[j].id);
optionstring += “<option value=”” + date[j].id + “””” >”” +date[j].house_name+”” “” + “”</option>””;
$(“”#select””).html(“”<option value=’0′>请选择…</option> “”+optionstring);
}
}