前段时间遇到这个问题,发现在页面中的源代码已经显示selected=“selected" 可是还是选中的第一项,试过很多办法,都不行,最后只好靠js来解决了,获取所有的dropdownlist中属性为selected=“selected"的项重新设置一下该属性,即可,相关代码如下:
var stArray = $("select"); for (var i = 0; i < stArray.length; i++) { var itemId = $(stArray[i]).attr("id"); $("#"+itemId+" option[selected='selected']").attr("selected", "selected"); }
后记:过了很长一段时间,后来回头看发现问题是在js中将其默认为第一个,在clearControls2方法中,清空即将显示的标签,结果悲剧发生了,代码如下:
1 $(objId + "select").each(function() { 2 $(this).get(0).selectedIndex = 0; 3 });
总结:尽管从逻辑上来讲两行代码冲突,但是为了客户感觉和页面加载,只能这样了。