普通select option做模糊查询
因为我们要做文字检索的模糊查询,所以这时候要获取到select标签的文本值,获取当前选中文本内容方法:
var StuSchool = $("#StuSchool option:selected").text();
//初始化提示信息 <option value="">==请选择学校==</option>
<td>学校:
<select autocomplete="off" name="StuSchool" id="StuSchool" onchange="SelectPro(this)" style="font-family: 微软雅黑;padding-left:8px">
<option value="">==请选择学校==</option>
<c:forEach items="${tb_schoolList}" var="c">
<option value="${c.school_id}" style="text-align: center;">${c.school_name}</option>
</c:forEach>
</select>
</td>
问题来了:没有选中任何文本值时 alert(StuSchool);
你会发现此时默认选中第一个option文本内容:
==请选择学校==
也就是说当我啥的不选的时候应该默认为空,什么都不做,那么怎么实现呢,我换了好几种方法,都没有达到我想要的功能效果,之后我想了个取巧的方法,我们可以设第一个option里的值为空,然后再取出其value值将其赋给text初始化的一个值
select标签模糊查询让第一个option提示信息传参数的时候赋值为空
<option value=""> //先赋值为空
//取得时候做一个判断,如果文本内容为“==请选择学校==”即赋值为$("#StuSchool").val()默认取出来的第一个值就是value=""
var StuSchool = $("#StuSchool option:selected").text();
if(StuSchool=="==请选择学校=="){
StuSchool=$("#StuSchool").val();
}
效果如上 点击检索 什么都不做不影响联级检索模糊文本内容的任何一项