我要回答问题。我有一个多列表项目,我希望显示三个隐藏的tr我设置为当列表项具有特定值时显示'隐藏'。
表单元素具有以下设置
<tr>
<td><label>bla</label></td>
<td><input id='bla'></td>
</tr>
我使用以下javascript。
function checkValue(){
var verhuurdVan = document.getElementById('verhuurd_van_datepicker_field').parentNode.parentNode.style.display='none';
var verhuurdTot = document.getElementById('verhuurd_tot_datepicker_field').parentNode.parentNode.style.display='none';
var beschikbaar = document.getElementById('beschikbaar_verhuur_1').parentNode.parentNode.style.display='none';
var list = document.getElementById('productstatus_id_ListOn');
for(var i=0; i<list.options.length; i++){
if(list.options[i].value == '1'){
here the table rows has to be set to display block;
}
}
忽略HTML ID名称,因为这是由我使用的CMS解析的。
提前感谢。
答案 0 :(得分:0)
如果不知道DOM的确切布局,就无法提供所需的确切代码行。但是,从您发布的代码块中可以清楚地看到元素被第3-5行隐藏。
因此,在你的内部if
块中,要使元素重新出现所需要做的就是将相应元素的样式设置回'block',例如:
document.getElementById('verhuurd_tot_datepicker_field').parentNode.parentNode.style.display='block';
您实际激活的三个节点中的哪一个取决于您自己决定,但 是如何进行的。