Javascript 如何比较用户';输入DOM中段落的文本长度
我一直在尝试创建一个应用程序,将用户的答案与句子中的字母数进行比较 如果猜对了,总是会说“不” HTMLJavascript 如何比较用户';输入DOM中段落的文本长度,javascript,html,dom,input,Javascript,Html,Dom,Input,我一直在尝试创建一个应用程序,将用户的答案与句子中的字母数进行比较 如果猜对了,总是会说“不” HTML 您在表单提交之前评估输入的长度,并将输入的长度与.cat值的长度进行比较,而不是将输入解析为整数并与.cat的长度进行比较 const form=document.getElementById(“表单”); const cat=document.querySelector('.cat').textContent.length; const guess=document.getElement
您在表单提交之前评估输入的长度,并将输入的长度与
.cat
值的长度进行比较,而不是将输入解析为整数并与.cat
的长度进行比较
const form=document.getElementById(“表单”);
const cat=document.querySelector('.cat').textContent.length;
const guess=document.getElementById(“guess”);
表格.附录列表(“提交”,功能(e){
e、 预防默认值();
常量结果=(parseInt(guess.value)==cat)?(“是”):(“否”);
控制台日志(结果);
返回结果;
});
猫
获得价值
提交表单时,需要计算输入的长度。在将猜测值与短语长度进行比较之前,还需要将猜测值解析为整数
constphrase=document.querySelector('.phrase');
document.forms['guess-form']
.addEventListener('submit',e=>{
e、 预防默认值();
常数
guess=e.target.elements.guess,//e.target==form
isValid=parseInt(guess.value,10)==phrase.textContent.length;
log(isValid?'yes':'no');
返回有效;
});
短语:“猫”
提交
在提交表单之前,您输入的值的长度会被评估。应该在提交时进行评估。不相关的命名/概念问题:我不会调用字符串的长度
cat
(与guess
相同)。可能会抓取元素并根据需要计算长度(如答案所示)或者使用变量名使其显式。这使代码更容易思考。是的,这是一个很好的观点哦,非常感谢。我以前尝试过对其进行解析,但最终在提交之前也进行了解析,因此得到了相同的结果
<body>
<div>
<p class="cat">cat</p>
<form id="Form">
<input type="number" placeholder="Enter a number" id="guess" value="">
<button type="submit" >Get Value</button>
</form>
</div>
<script src="apps.js"></script>
</body>
</html>
let form = document.getElementById("Form");
let guess = document.getElementById("guess").value.length;
let cat = document.querySelector('.cat').textContent.length;
form.addEventListener("submit", function (e) {
e.preventDefault();
let result;
if (cat === guess){
result= "yes";
} else {
result= "no";
}
console.log(result);
return result;
});