0

我有一个表单,它从单个地址字段中获取用户的地址,并使用谷歌地图加载地图,并在他们的位置上放置一个图钉。该表格还有 2 个选择下拉菜单,一个用于州,一个用于县。他们是在较早的时候被选中的,只是在这里预先选中的。作为我们代码的一部分,我们检查提供的地址是否具有与县/州组合不同的坐标。这是一种确保他们输入唯一地址的方法。

该代码在 IE 中失败,b/c 当 jQuery 从这些下拉列表中选择所选文本时,在 IE 中,结果包括一个方形字符(我假设为 ascii 或 unicode)和大量空格。在其他浏览器中很好。因此,例如,我将在 chrome 或 ff 中获取此地址:

“凤凰城,亚利桑那州”

但在 IE 中我得到:

” “凤凰城,“亚利桑那州”

当它被传递到谷歌地理编码功能时,它会失败。

我可以很容易地修剪空格,但无法省略奇数字符,甚至不知道为什么它只发生在 IE 中。选择是动态填充的,但代码中没有任何内容具有额外的空间或可见的回车或选项卡。任何建议表示赞赏。

这是jQuery代码。注意我已经添加了 trim() 来处理空格,## 是 b/c 这是一个 ColdFusion 页面:

var simpleAddress = $("##lookupStateID option:selected").text().trim() + ', ' +  $("##lookupCountyID option:selected").text().trim();

以下是选择选项的样子(从页面源代码复制):

<option value="">
Please Choose
</option>
<option value="">
-----
</option>
<option value="1">Alabama</option>
<option value="2">Alaska</option>
<option selected="" value="3">Arizona</option>
....
</select>

这是由 IE8 中的 mu 用户报告的,但我也可以在 IE9 和 10 中重现它。

我可以试着把小提琴放在一起,但代码是 1400 行代码,所以我需要提取几个部分。不可能举出一个完整的例子(我没有写!)

4

1 回答 1

0

检查编码。这看起来像页面包含一些非打印字符或代码是乱码。将其保存为 UTF-8/UNICODE 以确保其正常工作。

更新:嗯,我看到问题的内容已经扩展。在我在这里投反对票之前,请给我一些时间来查找消息来源。它看起来仍然像一些错误分配的字符集,但我需要确认它。

于 2013-09-30T15:58:22.403 回答