我正在使用具有此功能的jQuery Selectbox插件:
function setupContainer(options) {
var container = document.createElement("div");
$container = $(container);
$container.attr('id', elm_id+'_container');
$container.addClass(options.containerClass);
return $container;
}
...它为所有下拉菜单应用相同的ID名称,如何修改上述代码,以便每个ID都编号(从1开始)并且唯一?
查看完整脚本here。
谢谢!
答案 0 :(得分:0)
我认为elm_id是一个数字而且它是一个全局变量。如果这样代码看起来像这样:
function setupContainer(options) {
var container = document.createElement("div");
$container = $(container);
elm_id++;
$container.attr('id', elm_id+'_container');
$container.addClass(options.containerClass);
return $container;
}
答案 1 :(得分:0)
您可以将elm_id存储为您的函数的属性,如此
function setupContainer(options) {
var container = document.createElement("div");
$container = $(container);
var elm_id = setupContainer.uid++;
$container.attr('id', elm_id+'_container');
$container.addClass(options.containerClass);
return $container;
}
setupContainer.uid = 1;
这样您就不会依赖另一个全局变量。