Javascript jQuery select:使用$(.class)获取不同的var
我正在使用ddslick库生成select。 我使用选择作为通用过滤器。 我还使用大量的Javascript jQuery select:使用$(.class)获取不同的var,javascript,jquery,Javascript,Jquery,我正在使用ddslick库生成select。 我使用选择作为通用过滤器。 我还使用大量的$.dialog在我的应用程序上获得桌面特性 因此,我希望我的选择显示在每个对话框窗口上,使用如下类: $(".filters").ddslick(random instructions) 每个标有“filters”类的DIV都能很好地接收和绘制ddslick,无论它是否同时是5个窗口 它的工作非常好,选择甚至是独立的,直到我打开两个对话框窗口在同一时间 然后,如果我在第一个窗口中选择某个对象,它也会在第二
$.dialog
在我的应用程序上获得桌面特性
因此,我希望我的选择显示在每个对话框窗口上,使用如下类:
$(".filters").ddslick(random instructions)
每个标有“filters”类的DIV都能很好地接收和绘制ddslick,无论它是否同时是5个窗口
它的工作非常好,选择甚至是独立的,直到我打开两个对话框窗口在同一时间
然后,如果我在第一个窗口中选择某个对象,它也会在第二个窗口中选择相同的对象。这意味着变量不相关或只对一个窗口是唯一的
这是一个大问题,因为它会导致大错误
我需要ddslick将所选变量仅返回到一个窗口
这是一张让您了解的图片:
这是我的代码:
// download and populate ddslick values
$.ajax({
url: 'creerSelect.php',
type: 'GET',
data: $.param({'table':'categcours'}),
success: function (data) {
data=eval(data);
afficheSelect(data);
}
});
function afficheSelect(data){ // make ddslick selects appear on each div labelled filters
$(".filtres").ddslick({
data: data,
width: 150,
imagePosition: "left",
selectText: titre,
onSelected: function (data) {
window.choix = data.selectedIndex+1;// get the selected variable on the global scope : how to use it after and make it unique and closed to only one jquery dialog ?
}
});
}
我尝试了
this.choix
,但它与对话框窗口无关。我想我应该为每个窗口创建一个对象,也许?我真的不知道该怎么做。将由带有jQuery的类生成的过滤器链接到一个唯一的对话框窗口是非常复杂的 我已经更改了代码,它工作得很好,但是做了同样的事情。我仍然不知道如何将泛型select与特定div关联起来
我打开一个窗口,选择过滤器工作正常,但是如果我打开另一个窗口,选择另一个过滤器,然后返回第一个窗口,在第一个窗口中获取第二个窗口的值,这会导致错误
我考虑为每个jquery窗口div对话框创建一个javascript对象
我的目标是,我不想为每个windows div对话框重新编写通用选择过滤器
这真的很难
$.ajax({
url: 'creerSelect.php', // populate the select filter
type: 'GET',
data: $.param({'table':'categcours'}), // select an sql table
success: function (data) {
data=eval(data);
$(".filtres").each( function(){
$(this).ddslick({ // each div labelled with the .filtres class will show the generic select filters
data: data,
width: 150,
imagePosition: "left",
selectText: titre,
onSelected: function (data) {
this.choix = data.selectedIndex+1;// How to link the selected variable to a particular div-dialog-window ? It's really hard ! Reminds me of a "private" thing ? Maybe i have to use "return" something ?
}
});
})
}
})) 我不确定我在这里说的是什么,但请尝试
$(“.filters”).each(function(){$(this.ddslick(…)})
我希望,通过这样做,它可以将每个函数包装在自己的函数(即闭包)中,并可以隔离作用域…非常感谢!让我们试试这个,我会让你知道的谢谢你:!NickHO我有另一个想法,也许我应该在用户进入一个窗口时禁用其他windows div筛选器。现在,我被迫为每个窗口重新编写一个独特的ddslick筛选器函数,它不短,但可以工作。非常感谢您的提示,这将在将来有所帮助。另一个想法:我应该在单击特定的jquerydialog时重新设置整个过滤器。