【发布时间】:2010-04-21 19:51:01
【问题描述】:
我在我的网站上搜索时使用了 jQuery UI 的“自动完成”功能。当您将单选按钮从“区域搜索”更改为“名称搜索”时,我希望它禁用自动完成功能,并在您切换回来时重新启用它。但是,当您禁用自动完成功能时,它不会隐藏下拉菜单,它只是将其调暗到 20% 左右。这是我的 javascript:
var allFields = new Array(<?php echo $allFields ?>);
$(document).ready(function() {
if ($("input[name='searchType']:checked").val() == 'areaCode') {
$("#siteSearch").autocomplete({
source: allFields,
minLength: 2
});
}
$("input[name='searchType']").change(function(){
if ($("input[name='searchType']:checked").val() == 'areaCode') {
$( "#siteSearch" ).autocomplete( "option", "disabled", false );
alert("enabled");
}
else {
$( "#siteSearch" ).autocomplete( "option", "disabled", true );
alert("disabled");
}
});
});
你可以在http://crewinyourcode.com看到它发生
首先你必须选择一个区号进行搜索,然后你才能看到问题。
编辑: 我知道您必须先选择区号,然后才能选择切换搜索类型。如果您转到此 URL,您将立即拥有它们: http://crewinyourcode.com/search/choose-category/732/
【问题讨论】:
-
我在您提供的链接中看不到问题。有一个“按名称搜索”单选按钮没有意义,因为没有其他单选按钮可以切换!它将始终被选中。有一个链接显示“按区域搜索”,它会进行搜索(尽管“按名称搜索”单选按钮仍处于选中状态),但我无法显示任何自动完成功能;它似乎是一个纯文本框。
-
您始终可以按名称搜索,但一旦您选择了一个,您就只能按区号搜索。一旦您选择了一个区号,它就会记住它并添加第二个单选按钮。我应该提供一个更好的链接:crewinyourcode.com/search/choose-category/732 开始在“搜索 732”上输入“导演”,然后你会看到自动完成。将其更改为“按名称搜索”,您会看到一条警报,指示自动完成功能已禁用(只是测试代码),并且自动完成功能仍会出现,但会消失,而不是隐藏。
标签: javascript jquery jquery-ui jquery-autocomplete jquery-ui-autocomplete