【发布时间】:2010-06-09 14:27:29
【问题描述】:
我编写了一个 JavaScript 代码,它调用 Web 服务返回一些数据并将结果填充到组合框中。但是我遇到了一个问题,即组合框的项目顺序在 Google Chrome 中是颠倒的。在 IE 和 Opera 等其他浏览器中,它是按照脚本填充项目列表的方式排列的。
我想知道这是 chrome 本身的一个已知问题,还是 chrome 处理 JavaScript 的方式。
编辑: 这是我为向组合框添加项目而调用的函数:
function addItemToDropList(comboBox, text, value) {
var dropListItem = document.createElement('option');
dropListItem.text = text;
dropListItem.value = value;
try
{
comboBox.options.add(dropListItem, null);
}
catch(e)
{
comboBox.options.add(dropListItem);
}
}
【问题讨论】:
-
你试过火狐吗?它可能是最流行的浏览器,并且经常被用作开发中的“标准”。
-
@Kerry 至于 Firefox,XMLHttpRequest 甚至不调用 Web 服务来检索数据。但在所有其他浏览器上都可以正常工作。
-
@madness800 如果您正在从 file:// URL 测试页面,那么 Web 服务在 Firefox 中看起来就像在不同域中的东西,它不会发出请求。部署到真实站点后,无论如何它都必须与您的 Web 服务位于完全相同的域中。
-
@Pointy 我正在本地 IIS 上测试我的页面,我的 Web 服务也在同一个域上运行。
-
您在选项集合上调用的“添加”函数不是标准的。 IE 支持它,但 WebKit 浏览器可能只是以不同的方式实现它。
标签: javascript combobox google-chrome