我有一个带有单选按钮的页面,需要在页面加载时预填充...我的代码在 Firefox、IE8 和 IE7 中的 IE8 中完美运行,但是当我尝试 IE7 纯环境时...单选按钮未预填充,而禁用 radio 效果很好.... 任何帮助将不胜感激。
谢谢!
edit1: 代码
main.disable = function($cntrl, flag){
if($cntrl.attr('type')=== "radio"){
var ctrls = document.getElementByName($cntrl.attr('name'));
for(var idx = 0 ; idx < ctrls.length; idx++){
ctrls[idx].disabled = flag;
}
else{
$cntrl.disabled = flag;
}
};
main.getControlById = function(id, context){
if(id.search("{") > 0){
id = main.fillTem(id, context);
}
return $(document.getElementById(id));
};
behave.addRule("abc","Enable/disable aa", function(){
var $ab = main.getControlById(a.ab, this);
if( supp !== undefined && supp !== null){
if(supp.ab === 'A' || supp.A === 'N'){
main.disable($ab, false);
}
else{
main.disable($ab, false);
}
}
else{
main.disable($ab, false);
}
});
最佳答案
这与我现在遇到的问题相同:我动态创建单选按钮列表,但在 Internet Explorer 7 中您无法选择它们。
我发现这不是与 jQuery 相关的问题:即使在纯 JavaScript 中创建元素也会产生无效输入。
如果你想让你的动态 radio 输入在 IE7 中工作,你必须在一行中声明它们。
这在 IE <= 7 中不起作用:
var input = $("<input />");
input.attr("id", answers[index].id);
input.attr("type", "radio");
input.attr("name", "answer");
input.val(answers[index].value);
改为使用此代码:
var input = $("<input id='" + answers[index].id + "' type='radio' name='answer' value='" + answers[index].value + "'></input>");
注意 </input>
, 你不能使用自闭标签 ( />
)。
关于javascript - 在 IE7 中预检查/选择单选按钮,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4730974/