下面为官方文档上面的,在附件里面也有些插件的说明,很容易
How?
First, load the default styles, jQuery, the LiquidMetal scoring algorithm, and the plugin.
<link rel="stylesheet" href="flexselect.css" type="text/css" media="screen" /> <script src="jquery.min.js" type="text/javascript"></script> <script src="liquidmetal.js" type="text/javascript"></script> <script src="jquery.flexselect.js" type="text/javascript"></script>
It's important that the styles come before the javascript. Now, let's convert your select boxes into some flexselect goodness on DOM ready:
jQuery(document).ready(function() { $("select.flexselect").flexselect(); });
This will turn all select elements with a class of flexselect into a flex matching masterpiece:
<select class="flexselect">
<option value="1">George Washington</option>
<option value="2">John Adams</option>
<option value="3">Thomas Jefferson</option>
...
</select>
Flexselect also supports some options to override the default behavior:
1.获取当前控件所选的值和文本
如下:
$("#ID" + "_flexselect").val("文本"); //得到控件的文本 _flexselect只有加上此后缀才行,因为JS后台转成了此下拉列表
$("#ID" ).val(" "); //得到控件的值
2.对下拉列表赋值,然后刷新下拉列表值
例1:
var options = [];
options.push({
value : "",
name : "任意范围"
});
var targetSelNode = document.getElementById("accArea1");
targetSelNode.updateOptions(options);
例2:
var options = [];
<% List<AccArea> accList =(List<AccArea>)request.getAttribute("accAreaList");
if(accList!=null && accList.size()>0)
{
for(int i=0;i<accList.size();i++){
AccArea a = accList.get(i);
a.getId();
a.getName();
%>
options.push({
value : '<%=a.getId()%>',
name : '<%=a.getName()%>'
});
<%
}
}
%>
var targetSelNode = document.getElementById("accArea1");
targetSelNode.updateOptions(options);
3.使控件失效或生效方法
注:这两种方法以flexselect都没有效果,暂时没有发现好的办法,所以项目中只好将下拉列表值赋空
$("#accArea1").attr("disabled",""); //使生效
$("#accArea1").attr("disabled","none"); // 使失效
document.all.form.officeCode.disabled=false;
document.all.form.userPortType.disabled=ture;
4.下拉列表的点击事件
$(document).ready(function() {
$("select[class*=flexselect]").flexselect(
{
allowMismatch: true,
onblur: changeSelect,
inputNameTransform: function(name) { return "new_" + name; }
});
});
这个里面的onblur: changeSelect 就是定义下拉列表的事件方法,然焦点离开时,调用changeSelect,方法
此方法如下:
function changeSelect(seleted, option) {
if($("#accArea1").val()==""){
var selObj = document.getElementById("officeCode1");
selObj.options.length=0;
return false;
}else{
doGetOfficeCodeList();
}
}
option为当前选中项的值,通过option.name,option.value得到文本及值,selected
通过var id = seleted.select.attr("id");得到ID,这就方便了!
相关推荐
这个功能允许用户在输入框中输入文本时,根据输入的内容动态过滤并显示匹配的下拉选项,极大地提高了用户体验。在本案例中,项目采用了名为"jquery-flexselect"的库,它是一个基于jQuery的插件,专门用于实现这种...
总的来说,jQuery Flexselect 提供了一种高效的方法来提升下拉列表的用户体验。通过其丰富的功能和高度的可定制性,我们可以创建出更加友好、高效的交互界面。在实际项目中,合理利用这个插件,能够显著提升网站或...
`flexselect`是一个基于jQuery的插件,它的核心功能是将传统的多选或单选下拉列表转变为一个可自定义、可搜索的输入框。这个插件的设计目标是提供一种灵活且易于使用的解决方案,以满足开发者对自动完成功能的各种...
当用户在下拉框中输入文字时,插件会实时显示与输入内容匹配的选项,形成一个可滚动的列表,方便用户快速选择。 ### 1.2 多选支持 除了单选模式外,`FlexSelect`还支持多选模式,允许用户同时选择多个选项。 ### ...
3. 配置选项:Flexselect提供了丰富的配置项,如动画效果、提示文本、最小输入字符数等,可以按需设置。例如,设置最小输入字符数为3: ```javascript $('.flexselect').flexselect({ minChars: 3 }); ``` 三、...
也就是select控件的文本项可以让它写。默认的select文本框是只读的,不能写。在网上找到一个jQuery插件:flexselect可以完成这项功能。 将插件放到项目里。然后在页面中引用这个插件。 [removed]</scr
3. **过滤算法**:内置了智能过滤算法,可以根据用户输入快速匹配数据。 4. **键盘导航**:用户可以通过上下键选择建议项,增强交互体验。 5. **可配置选项**:允许开发者调整各种参数,如延迟时间、最大显示条目数...
Flex可以将一些击键与较长的琴弦相匹配,这对于打字员而言是一大福音。 Quicksilver,LaunchBar和Launchy等应用程序已使这种键盘输入方法成为一种流行的方法。 现在是时候将相同的功能引入Web控件了。 FlexSelect对...
5. **AJAX交互**:当用户在搜索框中输入时,使用`ajax`向服务器发送请求,获取匹配的选项数据。这通常涉及到`$.ajax()`或`$.getJSON()`方法: ```javascript $('#searchSelect').on('input', function() { var ...
`jquery.flexselect-0.2`是一个专门用于创建可扩展和可自定义的下拉选择框的jQuery插件。它提供了类似于Google下拉框的样式和功能,包括自动补全、多选、搜索过滤等功能。以下将详细介绍这个插件以及如何使用它来...
内容索引:脚本资源,jQuery,下拉框提示,Flexselect,jQuery插件 jQuery Flexselect 同样是一款下拉框提示插件,也就是大家所说的输入框提示。目前,jQuery Flexselect已经发展到v0.2版本,其用法千变万化,适用的场合...
4. **jqueryflexselect下拉框自动提示**:改善原生HTML下拉框用户体验,当用户输入时自动提供匹配项,常见于搜索框或选择列表。 5. **jQuery id标签 - 8种不同的很酷的JQuery菜单例子**:提供多种样式和行为的菜单...