javascript - 如何在html的选择标签中创建onload java脚本选定值
问题描述
我创建了一个选择列表。如何onload
使用 javascript 创建函数。打开页面时选择的值为1
。那个时候我需要展示no1
div
。怎么做?
function olresult(e) {
var selectedValue = document.getElementById("sel").value;
if (selectedValue == '1') {
document.getElementById('no1').style.display = 'none';
document.getElementById('no2').style.display = 'block';
} else {
document.getElementById('no1').style.display = 'block';
document.getElementById('no2').style.display = 'none';
}
}
<select id="sel" onload="olresult(event)">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<div id="no1" style="display:none;">
<p>123</p>
</div>
<div id="no2" style="display:none;">
<p>aaaaa</p>
</div>
解决方案
<select>
元素不适用于onload
,您希望在选择更改时触发事件。您需要更改onload
为onchange
.
如果您需要在页面加载时发生某些事情,您可以添加onload
到<body>
元素中,或者更好的是只包含您的脚本以在 HTML 文档的末尾运行。此外,您也可以display:none
从 HTML 中删除。
function olresult(e) {
var selectedValue = document.getElementById("sel").value;
if (selectedValue == '1') {
document.getElementById('no1').style.display = 'none';
document.getElementById('no2').style.display = 'block';
} else {
document.getElementById('no1').style.display = 'block';
document.getElementById('no2').style.display = 'none';
}
}
<select id="sel" onchange="olresult(event)">
<option value="1">1</option>
<option value="2">2</option>
<option value="3">3</option>
</select>
<div id="no1" style="display:none;">
<p>123</p>
</div>
<div id="no2">
<p>aaaaa</p>
</div>
推荐阅读
- ruby-on-rails - 如何在 Rails 的弹性搜索客户端中创建动态 ID?
- docker - curl 在 gitlab-ci 运行器上超时失败
- vue.js - 选择要在 Vue.js 中的特定路由上显示的组件
- forms - Access 中的数据表
- node.js - 以最少的 http 请求实现聊天
- r - 用另一个 data.table 更新 data.table
- python - 如果我不重置 Python 的 ContextVars 会发生什么?
- maven - 在 3 个不同的分支上发布版本
- python - 在python中计算一系列相关矩阵(如DataFrames、pandas)之间的差异
- c# - C# 三角距离 - 打开 CV/Emgu