javascript - 基本的 javascript 不工作 - 显示 block

标签 javascript html css input

如果用户选择“House”,我希望弹出一个新的选择选项框。目前什么都没有发生。

function showFamilies(){

if(pt.selectedIndex == 1)
document.getElementById('families').style.display = 'block';

if(pt.selectedIndex != 1)
document.getElementById('families').style.display = 'none';
}


<select id="pt" value="pt" name="pt" onChange="showFamilies()">
<option value="" name="">Select</option>
<option value="1" name="1">House</option>
<option value="2" name="2">Commercial</option>
</select>

<div id="families" style="display:none">Families: 
<select name="amin_families">
<option value="1" name="Condo">1</option>
<option value="2" name="Co-Op">2</option></select>
</div>

最佳答案

pt在你的showFamilies函数可能未定义(取决于浏览器对 http://www.whatwg.org/specs/web-apps/current-work/multipage/browsers.html#named-access-on-the-window-object 的解释)。尝试

function showFamilies(pt) {
    document.getElementById('families').style.display = pt.selectedIndex === 1
        ? 'block' : 'none';
}

在你的 HTML 中

<select id="pt" name="pt" onchange="showFamilies(this)">

附言<select>元素没有 value属性。

关于javascript - 基本的 javascript 不工作 - 显示 block ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18437357/

相关文章:

html - 带有 float :left 的 div 的全高右边界

html - Flexbox 在 Firefox 中看起来完全不同

javascript - 查找具有样式属性的元素并更改它

javascript - 如何在 angularjs 中使用 ajax 调用构建多步骤向导

javascript - D3 分配节点标签

javascript - AngularJS 1.2.0 $resource PUT/POST/DELETE 不发送整个对象

jquery - 如何在页面刷新时保留<form>中的 'input',或者停止页面刷新?

javascript - 使用 Jquery 按类和 ID 获取图像元素

javascript - 一个html输入类型如何调用两个函数?

css - 当宽度未知时,水平居中图像并将其垂直放置在 div 内的底部