Jquery MultiSelect 这个多选下拉框控件,相信很多人都用过。

最近项目中要用到,于是到网上下载下来,发现兼容性好,操作方便。

1.相比于 dropdown select list ,对ie6兼容性更好,体现在对层的覆盖,dropdown select list 如果这个控件的下方有一个select,单击该控件不会覆盖下方select,导致感觉很生硬。于是由于dropdown select list对ie6不兼容,使用multiselect替换。

2.使用multiSelect,只需要初始化一下控件的初始化函数。然后引入相应的文件。但是在使用过程中,发现其对jquery的val()方法根本不起作用,因为习惯了jquery的val方法获取值,自认为该控件为jquery的一个插件,应该可以通过val()函数得到选中值,结果打印不出来。不支持该函数。网上有人说使用text()函数。这也是换汤不换药,该函数只能得到选中的文本,而不是程序想要得到的结果。但回答该问题的人给我一个很大的启示,这种私人写的控件,一定要看源代码,找答案。于是搜索百度,谷歌3天都没有结果后,硬着头皮去看源码(有点看不懂),找函数,终于在js源码中找到了,有一个专门的函数是返回他选中的值,这个函数是通过字符串拼接起来的。

 

所以,在问题出现后,个人觉得,第一步还是找api,src,help 等,然后再谷歌,百度。然后再论坛提问。

我们很多程序员最开始就忽略了第一步,马上就google,百度。当然不排除能找到答案。但最有效的办法还是自己去发现问题出现的源头,敢于怀疑权威的代码。

以上总结,记于5-23-2011.