我正在处理一个表单,该表单会显示一个SelectField(id ='数据库')并且仅当选中了复选框(id =' alternate')时(使用javascript)将显示SelectField(id =' alt_databases')。此代码适用于Chrome / Firefox,但仅在我打开"开发人员工具"时才能在IE9中使用。代码基于flask,jinja2和javascript。有没有人对此提出建议?我确定它是IE特定的问题。
形式:
<form method='post'>
{{ form.hidden_tag() }}
{{ form.alternate.label }}<br>
{{ form.alternate }}
<table class='center' style='margin-left:auto;margin-right:auto;width:70%'>
<tr>
<td class='media-left' style='display:none;'>
{{ form.alt_databases.label }}<br>
{{ form.alt_databases(size=20) }}<br>
</td>
<td class='media-right'>
{{ form.databases.label }}<br>
{{ form.databases(size=20) }}<br>
</td>
</tr>
</table><br>
<p>{{ form.submit }}</p>
</form>
使用Javascript:
(function () {
var el = document.getElementById('alternate'),
source = document.getElementById('alt_databases');
target = document.getElementById('databases');
el.addEventListener('change', function() {
if (el.checked) {
source.parentNode.style.display = 'block';
} else {
source.parentNode.style.display = 'none';
}
});
})();