我有一个用户输入坐标的应用程序。
在DB和大多数绘图软件中,他们使用lat / lng的十进制表示法(例如123.1234
)而不是旧格式:34N 40' 50.12"
我需要测试输入到表单中的值是浮点数,而不是字符串。但是在34N 40' 50.12"
上使用parseFloat会返回34--它会使用大多数测试进行验证。
以下是我正在尝试的内容,这是在这里找到的一些非常聪明的解决方案的混搭 - 但到目前为止,我无法让所有情况下都能正常工作。我正在测试的基本案例是:
123.1234
- 有效'123.1234'
- 有效34N 40' 50.12"
- 无效'34N 40' 50.12"'
- 无效123
- 无效'123'
- 有效以下是我一直在尝试的内容:http://jsfiddle.net/zfwAj/