Javascript 使用单击事件重新写入字符串
我试图编程一个click函数,如果某个条件为真,每次单击按钮时,它都会覆盖当前字符串并用新字符串替换它 我在下面创建了一个简单的示例来说明我要实现的目标Javascript 使用单击事件重新写入字符串,javascript,Javascript,我试图编程一个click函数,如果某个条件为真,每次单击按钮时,它都会覆盖当前字符串并用新字符串替换它 我在下面创建了一个简单的示例来说明我要实现的目标 $(文档).ready(函数(){ const hello=document.getElementById(“hi”); 常数按钮= 文件.getElementById(“替换”); let=false; 让我们再见=函数(){ 单击=真; if(hello.innerHTML.length{ const hello=document.get
$(文档).ready(函数(){
const hello=document.getElementById(“hi”);
常数按钮=
文件.getElementById(“替换”);
let=false;
让我们再见=函数(){
单击=真;
if(hello.innerHTML.length<9){
如果(单击){
//我想先清除当前的HTML,然后每次单击按钮时,我都会使用新的HTML添加一个9。
hello.innerHTML+=“9”;
}
}
}
按钮。addEventListener(“单击”,再见);
});代码>
01234567
单击我
我删除了您的jQuery,因为它不需要。我相信这就是你要找的
步骤:
获取对元素的引用(hello
和按钮
)
将事件侦听器绑定到您的按钮单击
单击按钮时,获取hello
元素的当前值
运行逻辑(if语句
)并执行所需操作
(()=>{
const hello=document.getElementById(“hi”);
const button=document.getElementById(“替换”);
addEventListener('单击',(evt)=>{
const helloText=hello.innerHTML;
如果(helloText.length>9){
hello.innerHTML='9';
}否则{
hello.innerHTML+=helloText.length;
}
});
})();代码>
01234567
单击“我”
Javascript中缺少一些括号。您的Javascript是从外部.js文件导入的还是内联的,如果是这样,它是否包装在
标记中?这只会添加9
一次。在那之后,length<9
测试将失败。我正在用代码笔写这一切,我忘记粘贴document.ready函数的右括号,但它们在我的代码中。那么let bye=function(){…}
的右括号呢?函数中有addEventListener
调用。感谢您的响应,您可以获得我想要的效果,但条件不正确。您知道当您在按下数学运算符(例如加号)后按下数字按钮时,计算器上的显示是如何重置的吗?这就是我要寻找的效果…长度不应该超过一定量,否则它会溢出我的显示元素。如果这有帮助,请向上投票。我想你是想让我解决你的问题/为你写代码,而不是给你方向。这不是软件的范围。jQuery需要确保代码在文档准备就绪时运行。您可以将其替换为DOMContentLoaded
的等效事件侦听器。