类说明
前端结构
详细请见页面源代码,说明点如下
- 1. 对于使用该类的元素,可以由用户自定义,只要传递的内容是JQ对象即可
- 2. 对于该类的HTML元素样式,目前除了menu框的overflow样式在js中已经规定好之外,其他样式没有默认值,都需要重新书写,或待后期优化
- 3. 对于加入该类的HTML结构,作为参数传递给类的对象称为最外层对象,以上例子中为.selecter,结构中应包含(1)输入框.selectStr (2)值的记录框.selectValue (3)菜单框.menu (4)展现按钮.selectButton
- 4. 在最外层对象中 有自定义属性 分别为input 1/0 1时表示下拉框可自行输入 0表示不可输入 multiterm 1/0 1表示可多项选择 0表示仅可选择单项 maxHeight 具体数值 该自定义项表示下拉菜单框的最大高度值
- 5. 菜单框中的li元素自定义values值表示其实际的值,当然作为普通表单传递的时候可以自行选择获取.selectStr的值还是.selectValue的值,当然需要给这两个input框对应的name,至于数据前者是表象,后者是真实值
功能说明
- 1. 按需要 可设置单选或者多选 可设置输入框可输入或者不可输入 用于是否可接受自定义输入的情况 另外在输入时有匹配提示的功能
- 2. 在选择选项时可用鼠标或者键盘的方向键配合回车键选择和确认
- 3. 多选的情况下回车键不响应回填值到输入框,只响应选择选项,所以多选的情况下只能鼠标移动外部进行输入框重置
尚待完善
- 1. 由于值的回填是在菜单框隐藏事件中进行,而且菜单框隐藏并非触发后立刻执行,考虑到各种事件影响菜单框的显示与否,目前采用时间函数延迟执行,导致点击提交选择的按钮的时候,由于值的回填在该按钮的click事件触发之后,所以无法在菜单框显示的时候直接按提交按钮进行提交,这样只会提交上一次的选择值,这里仍需要完善
- 2. 更待研究......