JSON:选择的选项在IE中不工作,而在firefox中工作
JSON: selected option is not working in IE while works in firefox
我对JSON有以下查询:所选选项在IE中不工作,而在firefox中工作。
我有这样的示例数据:
var columnDefs = [...
{"name":"childPerformancePrice", "label":"Cosell Price", "type":"int", "control":"select", "options":performancePrices, "align":"left", "default":"", "required":false,"size": 6},
...]
性能下拉列表如下:
function getPerformancePrices(){
......
$.getJSON("?data=performancePrices", function(list) {
performancePrices.push([0, ""]);
$.each(list, function(index, item) {
performancePrices.push([item.id, item.description]);
performancePrices.sort();
});
...
});
}
示例JSON数据,如JSON.stringify(columnDefs[index])
:
{"name":"childPerformancePrice", "label":"Cosell Price", "type":"int", "control":"select", "options":[[0,""],[15000,"Band 1"],[15001,"Band 2"],[15002,"Band 3"]],"align":"left", "default":"", "required":false,"size": 6}
问题:为什么以下选择的选项在编辑期间不工作(即,没有选择正确的IE)在IE中,而在Firefox中工作良好?
function selectCell(oColumnDef, value) {
var oSelect = createNamedElement("select", oColumnDef["name"]);
if (value == undefined) {
value = "";
}
$.each(oColumnDef["options"], function(index, item) {
var oOption = document.createElement("option");
oOption.value = item[0];
oOption.text = item[1];
if (item[1] == value) {
oOption.selected = true;
}
oSelect.options.add(oOption);
});
我唯一能想到的是,因为它在FF中工作,但不是IE,有一些关于你如何创建这些选项,后者不喜欢。由于您已经在使用jQuery,请尝试更改:
var oOption = document.createElement("option");
oOption.value = item[0];
oOption.text = item[1];
if (item[1] == value) {
oOption.selected = true;
}
oSelect.options.add(oOption);
:
var oOption = $("<option />", { "value": item[0],
"text": item[1],
"selected": item[1] === value
});
$(oSelect).append(oOption);
假设jQuery会解决IE的任何问题
相关文章:
- 为什么jquery悬停在jsfiddle中可以工作,而在我的html布局中却不能
- 为什么jQuery代码段在没有IFrame的情况下可以工作,而在有IFrame时却不能工作
- Ajax load在chrome中不起作用,而在Fire fox中工作
- 节奏和余烬,我如何让它在所有路由中工作而不重复代码
- 消息在 Chrome 和 IE 中不显示,而在 Firefox 中工作
- 为什么鼠标滚轮在Chrome中工作,而在Firefox中不起作用
- 为什么我的应用程序中的某些组件在IE7中工作,而在IE9中不起作用
- Javascript:当Javascript在IE中工作而在Firefox或其他浏览器中不工作时,有什么不同的条件
- 依赖下拉列表在php中工作,而在codeigniter中不工作
- 如何使用MeteorPad?(更新:在家工作而不是在工作——防火墙,代理问题?)
- 代码在Codepen中工作,而不是在浏览器中工作:JavaScript在鼠标滚轮上缩放SVG
- 为什么$(this)选择器在我的函数内部工作,而在外部工作
- 带有渐变的Javascript滑块在chrome上失败,而在FF和IE7/8/9上工作
- 为什么一个JavaScript函数在这里工作而另一个不工作
- JSON:选择的选项在IE中不工作,而在firefox中工作
- JavaScript不能在chrome上工作,而在设置中启用
- 为什么Bootstrap's下拉开关在某些环境下工作,而在其他环境下不起作用?
- 在Firefox剑道按钮文本不改变,而在IE和Chrome工作
- 为什么Javascript编程在一个服务器上工作而在另一个服务器上不行?
- Firefox在动画结束时从DOM中删除元素时会闪烁,而在Chrome中则可以正常工作