【问题标题】:Prompt with hints in Javascript提示 Javascript 中的提示
【发布时间】:2012-04-13 22:40:57
【问题描述】:

我想从用户那里得到一些意见:

keywords = prompt("Input keywords separated by commas", "");

我在SQLite 数据库中存储了许多不同的字符串,这些字符串可以建议用户输入什么内容。 假设您有这些字符串的数组或列表。您将如何在 Javascript 中编写此提示?这个功能是否有一些函数或代码sn-ps?

我希望它的工作方式与here 类似。当你开始打字时,你会得到提示。只有一个缺点,您不能输入更多用逗号分隔的字符串。 Here 这个功能可以处理更多的字符串吗?

prompt() 函数是否适合此目的?您可以使用其他方式获取用户输入。

谢谢

【问题讨论】:

  • 你还想要纯javascript还是jquery?

标签: javascript autocomplete firefox-addon hints


【解决方案1】:

您不能真正使用 prompt() 的任何自定义功能。

您最好创建一个<input type="text"/> 并将整个内容连接到一个按钮,从而在用户单击它或按下回车键时提交数据。然后对其进行编码以在用户输入新字符时获取自动建议值。

你应该看看jQuery UI's autocomplete component(它也可以使用多个字符串作为输入)。您还需要设置一个服务器端脚本,该脚本将可能不完整的字符串作为输入并将可能的匹配列表输出回浏览器。

【讨论】:

【解决方案2】:

您无法调整本机 prompt() javascript 方法。

我知道您没有使用 jQuery 进行标记,但使用库来实现这样的行为会更容易。

您可能必须使用 jQuery UI Dialogs 构建自己的对话系统。他们可以选择将其设置为模态,以便用户界面阻塞,直到对话框关闭。

jQuery UI 对话框不会阻止 javascript 的执行,尽管像提示一样。您可能需要能够在对话框关闭时执行代码。 answer 展示了一种轻松实现该功能的方法。

最后,jQuery UI Autocomplete 提供了一个示例,说明如何将它用于同一输入中的多个值。他们使用逗号分隔符,但我想您可以修改示例以使用空格:jQuery UIAutocomplete Multiple Values

【讨论】:

  • 感谢您的回答。我喜欢你发布的最后一个链接。 sn-p 将是 Firefox 扩展的一部分,因此需要某种对话框。但是我对 JQuery 的经验很少,所以我需要几天的时间来学习很多其他的东西。
  • 我猜用纯 javascript 构建它可能需要更多时间。使用 jquery 你只需要学习一个 API,那些脏东西已经被库和插件处理了。此外,它非常简单。
  • 好吧,你可能是对的。我将尝试将它与我现有的插件代码放在一起。
  • 我一直坚持使用 JQuery,没有任何方法可以将其从 this 页面添加到 firefox 扩展中。
猜你喜欢
  • 1970-01-01
  • 2019-07-14
  • 2023-04-05
  • 1970-01-01
  • 1970-01-01
  • 2014-05-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多