简体   繁体   English

如何确保在输入字段中输入新数字时脚本/<p> 标签刷新?

[英]How can I make sure when I put a new number in input field the script/ <p> tag refreshes?

So I have this script, when I input a number and press the button it says if its a prime number or not, but when I put a new number the <p> tag does not refresh, it keeps the result of the first input.所以我有这个脚本,当我输入一个数字并按下按钮时,它会说它是否是质数,但是当我输入一个新数字时, <p>标签不会刷新,它会保留第一次输入的结果。

var primeResult;
var number;

window.addEventListener("load", Init);
 
function Init(){
number = Number(document.getElementById("PrimeNumb").value);
primeResult = document.getElementById("PrimeResult");
let primeButton = document.getElementById("btn");
primeButton.addEventListener("click",IsPrime);
}

function IsPrime()
    {
        var i,flag=0;

        for(i=2; i <= number/2; i++)
        {
            if(number%i == 0)
            {
                flag = 1;
                break;
            }
        }
        if(flag == 0)
        {
            primeResult.innerHTML = number + " is een prime nummer!";
        }
        else
        {
            primeResult.innerHTML = number + " is geen prime nummer!";
        }
    }

您可以对输入使用事件处理程序,例如changeinput

document.getElementById("PrimeNumb").addEventListener('input', IsPrime);

好的所以我已经修复了它,我将 ```let number = Number(numberElement.value)```` 放在 IsPrime 函数中,它解决了我的问题

You have the init method on page load initializing your number variable.您在页面加载时使用init方法来初始化您的number变量。 Hence it always checks if the the first value is prime.因此它总是检查第一个值是否为素数。

You can add the isPrime event handler directly on the input element like Josh mentioned or you can change your isPrime method to always get the current number value like you already have it in your init function.您可以像 Josh 提到的那样直接在输入元素上添加isPrime事件处理程序,或者您可以更改isPrime方法以始终获取当前数值,就像您在init函数中已经拥有它一样。

number = Number(document.getElementById("PrimeNumb").value);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 当新用户登录时,如何确保我的菜单刷新? 尝试显示正确的项目(管理员用户的管理员导航) - How do I make sure my menu refreshes when a new user logs in? Trying to show the proper items (admin navigation for admin users) 我如何确保在 JavaScript 中单击任何复选框时,输入字段变为 0 - How do I make sure in JavaScript that when I click on any checkbox, the input field goes to 0 当锚标记下方有ap元素时,如何使锚标记填充li元素 - How can I make an anchor tag fill an li element when there is a p element right underneath the anchor tag 我希望使我的代码验证一个字段,以确保它是四位数。 我怎样才能做到这一点? - I wish to make my code validate a field to make sure it is a number of four digits. How can I do this? 如何将文本放在随机数之前<p> ?</p> - How can I put text before a random number in a <p>? 当我 select 输入框时,如何将“您正在输入数字”放在输入框的正下方? - How can i put "you are entering a number" right below the input box when i select input box? 导航到某个输入字段时,如何自动生成新的输入字段? - How can I automatically generate a new input field when a certain input field is navigated to? 如何将输入放在选择标签的顶部以进行搜索? - How can I put an input in the top of select tag for searching? 我可以在表格中放置脚本标签吗? - Can I put a script tag inside a table? 当我创建一个输入框时,我怎样才能让它输出我在输入框中输入了多少? - When i created a input box, how can i make it so it outputs how much I put into the input box?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM