我正在使用 scriptaculous Ajax.Autocomplete 来使用不同的过滤器进行搜索。
http://github.com/madrobby/scriptaculous/wikis/ajax-autocompleter http://github.com/madrobby/scriptaculous/wikis/ajax-autocompleter
过滤器要求我动态地将数据传递到自动完成器中,我已经从以下链接成功学会了这样做。
http://www.simpltry.com/2007/01/30/ajaxautocompleter-dynamic-parameters/ http://www.simpltry.com/2007/01/30/ajaxautocompleter-dynamic-parameters/
现在,我有多个过滤器和一个搜索框。如何让自动完成程序发出请求without在输入中输入内容,但是单击新的过滤器?
这是一个需要澄清的用例。页面加载后,有多个过滤器(仅带有 onclicks 的链接),以及一个附加了自动完成器的输入字段。我输入一个查询并执行自动完成器请求。然后,我单击不同的过滤器,并且希望使用相同的查询但不同的过滤器执行另一个请求。
或者更简洁地说,如何让自动完成程序执行请求当我想要的时候,而不是依靠打字来触发它?
我还发现 activate() 方法效果很好。这是我的示例代码......
<script type="text/javascript">
/*<![CDATA[*/
var autocomp1 = new Ajax.Autocompleter("search", "AjaxResultsListPlaceholder", "ajaxServerSideSearchHandler.php", {
frequency: 1,
minChars: 10,
indicator: "AjaxWorkingPleaseWaitPlaceholder",
} );
/*]]>*/
</script>
<form id="theform">
<input type="text" id="search" name="search" value="" />
<input type="button" id="btn_search" name="btn_search" value="Search" onclick="autocomp1.activate();" />
<div id="AjaxWorkingPleaseWaitPlaceholder" style="display: none; border: 1px solid #ffaaaa;">
</div>
<div id="AjaxResultsListPlaceholder" style="display: none;; border: 1px solid #aaffaa;">
</div>
</form>
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)