javascript - Javascript getElementsByClassName 不起作用
问题描述
我正在尝试制作一个按钮,一旦单击它就会使相同的 javascript 代码应用于同一个类,但它不会工作
function Destination() {
hrs = Math.round(Math.random() * 12);
mins = Math.round(Math.random() * 60);
var hFormat = (hrs < 10 ? "0" : "");
var mFormat = (mins < 10 ? "0" : "");
var amPm = (hrs < 12 ? "AM" : "PM");
return String(hFormat + hrs + ":" + mFormat + mins + " " + amPm);
}
<button onclick="document.getElementsByClassName('AirAsiaTable1').innerHTML =Destination(12,60)">
<i class="fas fa-search"></i>
</button>
解决方案
getElementsByClassName 返回一个元素数组(如果有的话)。你需要得到第一个。由索引 0 引用。
试试这个 CodePen
function Destination() {
hrs = Math.round(Math.random() * 12);
mins = Math.round(Math.random() * 60);
var hFormat = (hrs < 10 ? "0" : "");
var mFormat = (mins < 10 ? "0" : "");
var amPm = (hrs < 12 ? "AM" : "PM");
return String(hFormat + hrs + ":" + mFormat + mins + " " + amPm);
}
function btnClick(){
var p = document.getElementsByClassName('AirAsiaTable1')[0]
console.log(p)
p.innerHTML =Destination(12,60)
}
推荐阅读
- python - Python 多级数乘法简化
- asp.net - 在 asp.net 中动态添加控件取决于数据表计数
- angular - Angular 顺序 HTTP Rest 请求
- python - 使用python解析xml获取x,y值
- python - 保存 Django ModelForms
- android - 如何将 config.xml 中的权限声明为 AndroidManifest.xml?
- ios - 提供的视图控制器数量 (0) 与请求的转换所需的数量 (1) 不匹配
- bash - 在 macOS 中使用格式化的日期时间列出文件(相当于在 linux 中查找 -printf)
- angular - Angular CLI 9 - 无法复制资产:EFAULT:系统调用参数中的错误地址,copyfile
- azure - OAuth 2.0 配置与 Azure API 管理中的入站策略设置有何不同?