使用例如动态创建单选按钮
var radioInput = document.createElement('input');
radioInput.setAttribute('type', 'radio');
radioInput.setAttribute('name', name);
Run Code Online (Sandbox Code Playgroud)
适用于Firefox但不适用于IE.为什么不?
Pre*_*aul 24
从帕特里克的建议迈出一步,使用临时节点,我们可以摆脱try/catch:
function createRadioElement(name, checked) {
var radioHtml = '<input type="radio" name="' + name + '"';
if ( checked ) {
radioHtml += ' checked="checked"';
}
radioHtml += '/>';
var radioFragment = document.createElement('div');
radioFragment.innerHTML = radioHtml;
return radioFragment.firstChild;
}
Run Code Online (Sandbox Code Playgroud)
根据这篇文章及其评论:http: //cf-bill.blogspot.com/2006/03/another-ie-gotcha-dynamiclly-created.html
以下作品.显然问题是你无法在IE中动态设置name属性.我还发现你也无法动态设置checked属性.
function createRadioElement( name, checked ) {
var radioInput;
try {
var radioHtml = '<input type="radio" name="' + name + '"';
if ( checked ) {
radioHtml += ' checked="checked"';
}
radioHtml += '/>';
radioInput = document.createElement(radioHtml);
} catch( err ) {
radioInput = document.createElement('input');
radioInput.setAttribute('type', 'radio');
radioInput.setAttribute('name', name);
if ( checked ) {
radioInput.setAttribute('checked', 'checked');
}
}
return radioInput;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
85816 次 |
| 最近记录: |