【问题标题】:setting jquery auto-complete plugin to auto-submit将 jquery 自动完成插件设置为自动提交
【发布时间】:2011-06-19 07:45:45
【问题描述】:

我在 PHP 中使用 JQuery 自动完成时尝试调整的两件事。
1. 我希望当我选择一个选项时,它会自动提交表单(目前需要两次输入)
2.当我继续写并且没有新选项存在时,仍然显示旧选项。我宁愿它不建议不相关的选项,即使不存在。

谢谢

更新: 我已经解决了。 2,对于未来的读者来说,问题是我从源 url 发送了 null 而不是空的 json。 关于数量。 1,我已经按照建议完成了,现在我的 JQuery js 代码如下所示:

$( "#searchid" ).autocomplete({
    source: "/autocomplete_url.php?more=1",         
});

$("#searchid").result(function (event, data, formatted) 
{
    alert("o"); // just to check if got here
    $('#formid').submit();
});

但是,从未调用结果函数(我添加了一个简单的警报来验证这一点)。知道为什么吗?

【问题讨论】:

  • 您使用的是哪个自动完成插件,您是如何实现在 php 中传回的结果的?
  • 我正在使用 JQUery 自动完成功能,并使用返回 JSON 的源 URL 实现了它。

标签: javascript jquery jquery-ui autocomplete


【解决方案1】:

对于 1.) 您可以通过 jquery 从 result(handler) 中简单地提交表单。看看这个 - http://docs.jquery.com/Plugins/autocomplete 如果你查看页面上的最后一个代码示例,而不是重定向,你可以简单地在结果调用中提交表单。

关于 2.) 点,jquery 自动完成功能就是这样工作的,也许您做错了什么或期望有什么错误,请提供更多相关信息。

【讨论】:

  • 关于 (2) 如果我正在搜索我的服务器没有选项的内容,则会显示最后成功的选项。我刚刚注意到在这些情况下我返回的是“null”而不是空的 JSON,所以可能就是这样......我会试试你关于 (1) 的建议
  • @Noam 在这种情况下,你应该尝试使用 api flushCache,再次检查我上面给出的链接。
  • 你能举一个使用result(handler)自动提交表单的例子吗?
  • @Naom $('#form-id').submit(),更多详情请查看 jquery api 中的 .submit()。
  • 我已经添加了您的建议,但从未调用结果函数。我已经用相关代码更新了我的问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-02-13
  • 2011-06-06
  • 1970-01-01
  • 2012-01-12
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多