我正在使用下面的代码在下拉字段中隐藏某些选项。
在我单击第一个广播按钮时,我的头脑震惊了为什么它可以正常工作,但对其他人不起作用,然后意识到我需要在单击另一个广播后将下拉列表重置为原始选项按钮。
我的应用程序有一个无线电按钮组,您单击该组的几个无线电组,并根据无线电的价值,以下if语句之一运行。
使用分离功能后,如何将下拉字段重置为原始内容或完整内容?
我已经尝试过这些,但是它们不起作用:
$('#3547').find('option:first').attr('selected', 'selected');
document.getElementById('3547').selectedIndex = 0;
document.getElementById('3547').reset();
代码:
var oldoptions = [];
if (typeVal == "Art")
{
$('fieldset#section-417').show();
thisval = 'Art -';
$("#3547").append(oldoptions);
oldoptions = $("#3547 option:not(:contains(" + thisval + "))").detach();
}
if (typeVal == "Chrome")
{
$('fieldset#section-417').show();
thisval = 'Chrome -';
$("#3547").append(oldoptions);
oldoptions = $("#3547 option:not(:contains(" + thisval + "))").detach();
}
if (typeVal == "Web")
{
$('fieldset#section-417').show();
thisval = 'Web -';
$("#3547").append(oldoptions);
oldoptions = $("#3547 option:not(:contains(" + thisval + "))").detach();
}
重新贴出需要的功能:
我想在过滤一些之前还原最初在下拉列表中的所有选项,因此,对于ex:for ex:在加载时,下拉列表包含12个选项。当检查"艺术"收音机时,下拉菜单中只显示4个项目。例如,当我单击另一个单选按钮" chrome"时,我希望将原始的12个选项还原到下拉列表,因此过滤器代码可以再次运行。
不确定周围的代码,但是从此摘要中,您似乎总是将一个空数组分配给oldoptions
,然后将其附加到Select(即您实际上什么都没有附加)。<<<<<<<<<<<<
选择一个应该使用的选项:
.attr('selected', true)
CSS ID不应以数字开头。也许那也使您的浏览器感到困惑。