如何获取button按钮文本值?点击按钮弹出undefined解决方法
问题根因
你点击按钮返回undefined是两处写法错误导致的:
- 你已经通过
onclick="clique(this)"把当前被点击的按钮对象作为参数传入了函数,不需要额外调用document.querySelector("button")查找元素,这个API默认只会返回页面中第一个匹配的按钮,和你实际点击的按钮无关。 x.element是无效属性访问:参数x本身就是按钮DOM实例,直接访问它的内容属性即可,不存在element这个子属性。
修复方法
直接读取传入的按钮对象的内容属性即可,修改后的函数代码:
function clique(x) { // 写法1:获取按钮内部HTML内容,当前场景下就是按钮文本 alert(x.innerHTML); // 写法2:仅获取纯文本,不受内部嵌套HTML标签影响,更适合当前纯文本按钮的场景 // alert(x.textContent); }
替换掉原有脚本里的clique函数后,点击对应按钮就会正确弹出按钮上显示的“Roche”“Papier”“Ciseau”文本。
内容的提问来源于stack exchange,提问作者PL lema
相关产品推荐
相关产品推荐

