之前遇到了一个奇葩问题,jQuery的chzn-select查询失效。本来用jQuery的chosen,挺好用的,这个select可以自动查询匹配,比select2用得更方便。
可是,有的地方用得却无法查询,有的地方又可以,查找了好久还是找不出来原因。用了firebug,又查代码,费了很大周折,最后还是发现了问题了。
原来的代码是这样的
<td>
<select class="chzn-select" id="industryId" name="industryId" data-placeholder="所属行业" style="vertical-align:top;width: 175px;">
<option value="">所属行业</option>
<c:forEach items="${listIndustry }" var="industry">
<c:if test="${paramMap.industryId==industry.industryId }">selected</c:if> >
${industry.industryName }
</option>
</c:forEach>
</select>
</td>
修改之后
<td>
<select class="chzn-select" id="industryId" name="industryId" data-placeholder="所属行业" style="vertical-align:top;width: 175px;">
<option value="">所属行业</option>
<c:forEach items="${listIndustry }" var="industry">
<option value="${industry.industryId }"
<c:if test="${paramMap.industryId==industry.industryId }">selected</c:if> >${industry.industryName }
</option>
</c:forEach>
</select>
</td>
把值的位置移到和selected同一行,遍不会出现搜索失效的原因。这种情况,真是让人泪奔!如果牛逼网友可以解释原因,麻烦回复一下分享!