我正在创建我的第一个Web应用程序,并在相当早的时候遇到了一个问题!
我创建了一个函数,用于将用户键入的信息提取到HTML输入字段中。它的工作方式是,当用户输入他们的收入并单击submit按钮时,收入存储在一个变量中,供我在JavaScript代码的其余部分中使用。查看控制台日志,函数显示为“未定义”。
我很感激代码可能不是很干净,但我只是想让它工作,因为这是我的第一个小项目!
你知道我哪里出错了吗?
以下是HTML:
<div class="row input-1">
<label for="Gross Annual Salary">£</label>
<input type="number" name="Gross Annual Salary" id="Ann-Sal" placeholder="Gross Annual Salary" required>
<input type="button" class="submit-btn" value="Submit" onclick="getInc();">
</div>
这里是JavaScript:
function getInc() {
var inc = document.getElementById("Ann-Sal");
}
好的,所以我试着用上面汤姆·奥的一些代码自己修复它:
var buttonEl = document.querySelector('input[type="button"]');
var inputEl = document.getElementById("Ann-Sal");
var annInc;
function clickHandler() {
annInc = parseFloat(inputEl.value);
console.log(annInc);
}
buttonEl.addEventListener('click', clickHandler);
HTML:
<div class="row input-1">
<label for="Gross Annual Salary">£</label>
<input type="number" name="Gross Annual Salary" id="Ann-Sal" placeholder="Gross Annual Salary" required>
<input type="button" class="submit-btn" value="Submit">
</div>
这不管用。在向输入字段提交收入时,没有错误消息,但控制台中没有记录任何内容。
然后,我将Javascript代码重新配置为:
var buttonEl = document.querySelector('input[type="button"]');
var inputEl = document.getElementById("Ann-Sal");
var annInc;
function clickHandler() {
if (!inputEl.value.length) {
console.error('A salary is required!');
return;
}
annInc = parseFloat(inputEl.value);
console.log(annInc);
}
buttonEl.addEventListener('click', clickHandler);
这就奏效了。我以前没有使用if语句来验证用户的输入,因为我在HTML代码中的input元素中使用了'required',这基本上是正确的吗?所以我猜代码之所以不能工作是因为没有使用“return”语句?
有人能向我解释一下为什么回报声明能让它起作用吗?
我相信对于你们中一些有经验的人来说,我的缺乏理解一定让你们很痛苦!不过,我下定决心要把这件事搞清楚。
非常感谢
首先确保你有你的
function getInc() {
var inc = document.getElementById("Ann-Sal");
}
然后您将获得用户输入到代码中的值。
此外,提示使用addEventListener()而不是onhtml属性,这是更好的做法。
我从onclick端移除semiclon,它就工作了
<div class="row input-1">
<label for="Gross Annual Salary">£</label>
<input type="number" name="Gross Annual Salary" id="Ann-Sal" placeholder="Gross Annual Salary" required>
<input type="button" class="submit-btn" value="Submit" onclick="getInc()">
</div>
<script>
function getInc() {
console.log('works');
var inc = document.getElementById("Ann-Sal");
}
</script>
我是wordpress的新手,正在尝试定义和调用一个函数,但无法让它工作。 以下代码出现在使用get_template_part从content.php文件调用的php文件中。 我在function.php文件的底部添加了以下代码: 单击该元素时,它将返回: (index): 363未捕获引用错误:没有定义check AllTopicCheckBox。 有人能帮帮我吗?
问题内容: 我有一个ajax脚本,我想从一个函数发布。我正在使用onlick href,但是它没有显示为undefined。这是使用WordPress的。我试图在范围内和范围外移动代码,但是我似乎仍然无法正常工作。 谢谢 :) 问题答案: 当您执行此操作时,将调用global函数。由于在函数中定义了,因此它不是全局的。因此,是(因此)。 全局变量存储在对象中。 因此,可以将其公开为全局变量: 请注
问题内容: 我正在尝试为网站添加 自定义表情的用户脚本 。但是,我遇到了很多错误。 这是函数: 该标签的调用该函数: 每次单击具有属性的按钮时,都会出现此错误: 未捕获ReferenceError:函数未定义。 任何帮助,将不胜感激。 谢谢! 我尝试使用: 但是我有一个错误。 这是脚本。 我试图这样做来测试听众是否正常工作,但他们不适合我: 问题答案: 切勿使用或用户脚本中的类似属性!在常规网页中
我正在尝试为一个网站做一个用户脚本来添加自定义的表情。然而,我已经得到了很多错误。 函数如下: 标记的调用此函数: 每次单击具有属性的按钮时,都会出现以下错误: 未捕获得ReferenceError:未定义函数. 我尝试使用: 但我得到一个错误。 这是剧本。 我试着这样做来测试监听器是否对我有效,而它们对我无效:
在index.js,我有: 我从以下地方复制粘贴了代码:https://firebase.google.com/docs/functions/get-started 不知何故,当我使用 我得到: 错误:分析函数触发器时出错。ReferenceError:未在对象上定义函数。(/home/[USERNAME HERE]/functions/index.js:1:87)在模块中_在对象处编译(modu
我试图将onclick事件添加到svg元素中。 custom.svg