我的要求是在文本字段中输入地名并在 map 中显示,所以我使用了 geocomplete js,效果很好。
现在我的用户应该能够放置用户定义的地方,例如“我的房子”,为此我需要在点击 map 顶部的“x”按钮时删除地理完整。
我该如何实现?
提前致谢
最佳答案
我不会自定义包!当新版本发布时,您将不得不进行与之前相同的更改。
由于您没有提供任何代码,我可以让您了解我对 JQuery 验证方法覆盖所做的工作。
您只需在 geocomplete 中找到监听器(类似于 $('#listenToThis').on('click', function(){ doThings(); }
)。 js 文件,然后在 geocomplete 之后包含的文件中覆盖它。
如果您使用的是 bundle ,只需在定义 geocomplete 监听器响应后包含您的文件即可。
因此,在找到这些之后,您可以执行类似于以下操作的操作:
$.validator.methods.number = function (value, element) {
value = floatValue(value);
return this.optional(element) || /^-?(?:\d+|\d{1,3}(?:[\s\.,]\d{3})+)(?:[\.,]\d+)?$/.test(value);
}
上面的函数允许我验证在 JQuery ($) 中格式化为货币的客户端数字。
这会覆盖 JQuery.validator.methods.number 函数(一种覆盖函数的作弊方式而不更改包代码),因此如果您可以查明 geocomplete.addSomethingToMap 或 geocomplete.reactToClick 函数,您应该覆盖它,它基本上会以这种方式工作。
但警告:当您想要重新启用该功能时,您将需要重新包含更改。您将不得不重写、重写、重写。如果他们要在一个屏幕上添加数百个不同的新位置,这可能不是最好的方法,但对于最多一个小单位,例如十几个,这应该是一个很好的解决方案。
关于android - 通过单击按钮停止 geocomplete 在输入字段中添加用户定义的位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24406837/