html按钮传this,button通过this绑定onclick事件

本文指导初学者如何在JavaScript中为task.js文件中的aqi-table删除按钮添加点击事件处理函数delBtnHandle。通过实例演示了事件绑定、数据操作和DOM操作,适合学习者理解前端事件处理和DOM操作的基本实践。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

初学前端,遇到了一个问题,请指教:delBtnHandle(obj)这里会报错,并没有绑定上点击事件

图片描述

task.js:

/**

* aqiData,存储用户输入的空气指数数据

* 示例格式:

* aqiData = {

* "北京": 90,

* "上海": 40

* };

*/

var aqiData = {};

/**

* 从用户输入中获取数据,向aqiData中增加一条数据

* 然后渲染aqi-list列表,增加新增的数据

*/

function addAqiData() {

var city = document.getElementById("aqi-city-input").value;

var point = document.getElementById("aqi-value-input").value;

eval("aqiData." + city + " = " + point);

}

/**

* 渲染aqi-table表格

*/

function renderAqiList() {

var textval = "

城市空气质量操作";

var targetTable = document.getElementById("aqi-table");

for(var key in aqiData){

textval += "

" + key + "" + aqiData[key] + "";

}/*onclick='delBtnHandle(this)'*/

targetTable.innerHTML = textval;

}

/**

* 点击各个删除按钮的时候的处理逻辑

* 获取哪个城市数据被删,删除数据,更新表格显示

*/

delBtnHandle(obj){

// do sth.

var rowNum = obj.parentNode.parentNode.rowIndex;

var targetkey = obj.parentNode.parentNode.firstChild.innerHTML;

delete aqiData[targetkey];

document.getElementById("aqi-table").deleteRow(rowNum);

}

/**

* 点击add-btn时的处理逻辑

* 获取用户输入,更新数据,并进行页面呈现的更新

*/

function addBtnHandle() {

addAqiData();

renderAqiList();

document.getElementById("aqi-city-input").value = "";

document.getElementById("aqi-value-input").value = "";

document.getElementsByClassName("delBtn").onclick = function(){

delBtnHandle(this);

}

}

function init() {

// 在这下面给add-btn绑定一个点击事件,点击时触发addBtnHandle函数

document.getElementById("add-btn").onclick = function(){

addBtnHandle();

}

// 想办法给aqi-table中的所有删除按钮绑定事件,触发delBtnHandle函数

}

window.onload = function(){

init();

}

task.html:

IFE JavaScript Task 01

城市名称:

空气质量指数:

确认添加

[1]: /im

g/bVDmlE

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值