我又有了一个原型问题;看看这个HTML:
<select id="dropdown_1><option>...</option></select>
...
<select id="dropdown_n"><option>...</option></select>当我只有一个id="dropdown"并执行以下操作时:
temp_node = $('dropdown').firstDescendant();
default_option = temp_node.innerHTML;看起来不错!
我如何解决它,以同样的方式,使用许多看起来像我的ID?
$$('[id^="dropdown"]').firstDescendant();也不能解决我的问题!
发布于 2011-03-12 00:15:32
在previous question中,您忽略了$$返回的是一个数组,而不是一个元素。
如果你只对一次选择感兴趣,那么你可以这样做:
$$('[id^="dropdown"]')[0].firstDescendant();或者,如果您想要每个匹配选择的第一个选项,请执行以下操作:
var options = $$('select[id^="dropdown"] > option:first-child');发布于 2011-03-11 21:18:15
为每个元素添加一个类"dropdown“,并在上面选择。
顺便说一句,你的HTML有语法错误。
发布于 2011-03-11 21:29:35
你知道你有多少下拉菜单吗?如果是这样的话,你可以这样做:
for(var i=1; i<=MAX_DROPDOWNS; i++) {
var dropdown = $('dropdown_' + i);
// Do whatever you need to do with each drop down
}如果你不知道我认为有多少这样的东西会起作用:
var i=1;
while(var dropdown=$('dropdown_' + i)) {
// Do whatever you need to do with the drop down.
}https://stackoverflow.com/questions/5273324
复制相似问题