显示 jquery 自动完成的结果

发布于 2024-10-22 06:24:53 字数 414 浏览 1 评论 0原文

我有一个 cakephp 应用程序,可以提供一些结果和一个可以很好地格式化这些结果的 php 文件 结果以表格形式显示。

在我的搜索页面中,我使用 jquery 调用蛋糕应用程序上的自动完成功能。到目前为止一切都很顺利。我可以发送我的请求,ajax 工作,我得到格式化的 html 页面。但由于我是 jquery 新手,我不知道如何实际显示这个结果..

我的 jquery 是这样的,

$(document).ready(function() {
     $("input#search").autocomplete(........

抱歉没有确切的代码块,我现在在家...

我如何显示我从中返回的 html 内容ajax 在div 中使用jquery 的自动完成功能?

非常感谢

I have a cakephp app that delivers some results and a php file that nicely formats these
results as a table.

in my search page, i use jquery to invoke autocomplete on the cake app. everything is peachy up to this point. i can send in my request, ajax works, i get the formatted html page back. but since im a jquery newbie, i cant figure out how to actually display this result ..

my jquery is something like this

$(document).ready(function() {
     $("input#search").autocomplete(........

sorry dont have the exact codeblock, im at home now...

How do i display the html content i get back from ajax in a div using jquery's autocomplete?

thx a lot

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

花心好男孩 2024-10-29 06:24:53

尝试通过“html”将返回的html页面内容传递到div对象中。

$('#id-something').html(ajaxResultHtml);

Try pass the returned html page content into a div object via "html".

$('#id-something').html(ajaxResultHtml);
你又不是我 2024-10-29 06:24:53

jQuery 自动完成在匹配的元素中显示结果,在本例中是带有 id search 的输入,但据我所知,脚本的响应必须采用 JSON 表示法。

jQuery autocomplete displays the result in the matched element, in this case the input with the id search, but the response of the script must be in JSON notation, as far as I know.

梅窗月明清似水 2024-10-29 06:24:53

我假设您使用 string 作为源,因此在这种情况下,您指定的 URL 必须返回 JSON 数据,它不能返回 HTML< /代码>。执行此操作后,自动完成对话框应该会自动生成。

如果您想自定义对话框,可以覆盖_renderMenu_renderItem。一个很好的例子是 jQuery UI 网站 上的组合框演示(

如果您确实想坚持使用)使用 div 作为对话框,您需要覆盖一些函数,因为 ulli 的使用是硬编码的。如果您决定走这条路,请不要覆盖 jQuery UI 文件,而是扩展它,否则您稍后将遇到更新噩梦。请参阅 Scott González 的自动完成 html 扩展< /a> 开始。一旦您知道如何扩展它,您将需要深入研究 jquery.ui.autocomplete.js 并查找 jQuery UI Menu 小部件,并根据您的修改需要覆盖 refreshmovefirstlast 函数。

如果您只想显示在 div 中选择的内容,则需要使用 select 方法,当选择对话框中的元素时会触发该方法。

希望这能帮助您入门。

I'm assuming you're using a string as the source so in this case the URL you specify must return JSON data, it can't return HTML. The autocomplete dialog should generate automatically once you do that.

If you want to customize the dialog, you can overwrite _renderMenu and _renderItem. A good example of that is the comboxbox demo on the jQuery UI website

If you really want to stick with div for the dialog, you'll need to overwrite a few functions since the usage of ul and li is hardcoded. If you decide to go this route, don't overwrite the jQuery UI files, extend it otherwise you'll have an update nightmare later on. See Scott González's autocomplete html extension to get started. Once you know how to extend it, you'll need to dig in jquery.ui.autocomplete.js and look for the jQuery UI Menu widget and depending on your modification you'll need to overwrite the refresh, move, first and last functions.

If all you want is to display what you selected into a div, you need to use the select method, this method is triggered when an element in the dialog is selected.

Hopefully this will help you get started.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文