Google Maps Places API中如何更改默认文本“输入位置”

36

我在互联网上搜寻了许多,试图找到解决我的问题的答案,最接近的回答是另一个Stack Overflow的问题,链接如下:如何更改Google Maps API Places Autocomplete中的默认文本

问题是,要么那个提问者的需求与我不太一样,要么他们没有很清楚地表达自己的需求。

我正在寻找一种方法来替换文本输入框中的默认文本“输入位置”,并将其替换为其他内容,同时保持相同的功能。即:当焦点在该文本框上时,文本消失,并在焦点离开时重新出现,如果没有输入文本,则文本会消失 (而不是像预期的那样变为空白的文本输入框)。

在我的当前尝试中,我尝试使用jQuery插件来替换文本。它在页面加载时视觉效果良好,但是当单击时,“输入位置”再次弹出,当输入文本或该输入框失去焦点时才会消失(不像预期的那样,文本输入框应该变为空白)。

有谁可以给我指点一下吗?

提前致谢。

1个回答

73

只需将自动完成附加到的input元素的placeholder属性设置为您想要的任何内容:

<input type="text" placeholder="Some new text">

这在文档中有详细说明:

默认情况下,由自动完成服务创建的文本字段包含标准占位符文本。要修改文本,请在输入元素上设置 placeholder 属性。


搞定了。谢谢。我简直不敢相信它藏在页面底部,我竟然错过了它。我想我没有使用正确的关键词进行搜索。 - Douglas
没问题,很高兴能帮上忙。您可能需要测试并查看不支持“placeholder”属性(IE8及以下版本)的浏览器中会发生什么。 我不知道那里会发生什么。 - James Allardice
有一个小问题,如果用户在字段中输入文本,然后将其删除,当失去焦点时它仍然为空白(而不是返回我在JQuery中设置的默认值)。这并不太困扰我,但也不是理想的情况。 - Douglas
@Douglas - 我想你可能不得不接受它。当您初始化自动完成时,谁知道引擎盖下面发生了什么(默认占位符的行为不像本地占位符,因此肯定对其进行了某些操作)。您真的不能做更多的事情,只能坚持文档中概述的方法。 - James Allardice
这在安卓应用中可行吗? - Hitesh Kamani

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接