【发布时间】:2010-02-23 21:39:29
【问题描述】:
我编写了一个相当基本的 jQuery 插件,它接受一个无序列表并创建一个漂亮的多选列表。将其称为“multiSelector”,插件声明如下所示:
jQuery.fn.multiSelector = function(options) {
// plugin code
}
该插件实际上是在一个包含无序列表的 div 上运行的(出于 CSS 原因等),因此该插件的典型用法如下所示:
var $listDiv = $('#listDiv') // div that contains unordered list
$listDiv.multiSelector();
它工作得很好,所以我在创建插件时没有任何问题。但是,我现在想做的是为用户提供一种从他们的列表中获取所有选定项目的方法。我在网上寻找如何从这个插件创建函数,但我似乎真的找不到任何方法来使用函数扩展它。
最好做这样的事情,其中 'itemArray' 是基于列表项的 id(或其他内容)的字符串数组:
var itemArray = $listDiv.multiSelector().getSelected();
我意识到我在这里的逻辑可能有问题,但我只是在寻找一些关于如何实现这一点的指导。也许我需要编写一个新的 jQuery 函数来处理这个特定的任务,或者我仍然可以以某种方式将它附加到这个 multiSelector 插件上。任何帮助将不胜感激。
谢谢。
【问题讨论】: