警报javascript在if循环中不工作
我的js文件警报javascript在if循环中不工作,javascript,html,Javascript,Html,我的js文件 function myFunction() { var component = (document.getElementById("component").value); var author = (document.getElementById("author").value); var version = (document.getElementById("version").value); var changelog = (document.getElementByI
function myFunction() {
var component = (document.getElementById("component").value);
var author = (document.getElementById("author").value);
var version = (document.getElementById("version").value);
var changelog = (document.getElementById("changelog").value);
if (component == "" || author == "" || version == "" || changelog == "") {
alert("Please Fill All Fields");
} else {
alert("submission Completed");
}}
我的HTML文件
<form>
<h2>Insert Component:</h2>
<input id="component" type = "text" placeholder = "New Component">
<h2>Author:</h2>
<input id="author" type = "text" placeholder = "Author Name">
<h2>Version:</h2>
<input id="version" type = "text" placeholder = "New Version">
<h2>Changelog:</h2>
<input id="changelog" type = "text" placeholder = "">
<br>
<br>
<h1><input style="width:100px;height:30px;font-size: 20" name="submit" type = "button" onclick="myFunction()" value="Submit"></h1>
</form>
插入组件:
作者:
版本:
更改日志:
此外,如果我填写了所有表单字段,则第二个警报不会显示,始终会显示第一个警报…有人可以帮助我吗?我真的不明白这个问题是因为代码中:
<input id="component" type = "text" placeholder = "New Component">
(document.getElementById("component").value);
并将其转换为:
document.getElementById("component").value;
函数myFunction(){
var component=document.getElementById(“component”).value;
var author=document.getElementById(“author”).value;
var version=document.getElementById(“version”).value;
var changelog=document.getElementById(“changelog”).value;
如果(组件=“”| |作者=“”| |版本=“”| |变更日志=“”){
警告(“请填写所有字段”);
}否则{
警报(“提交完成”);
}}
插入组件:
作者:
版本:
更改日志:
问题在于代码中:
<input id="component" type = "text" placeholder = "New Component">
(document.getElementById("component").value);
并将其转换为:
document.getElementById("component").value;
函数myFunction(){
var component=document.getElementById(“component”).value;
var author=document.getElementById(“author”).value;
var version=document.getElementById(“version”).value;
var changelog=document.getElementById(“changelog”).value;
如果(组件=“”| |作者=“”| |版本=“”| |变更日志=“”){
警告(“请填写所有字段”);
}否则{
警报(“提交完成”);
}}
插入组件:
作者:
版本:
更改日志:
使用正确的ID-(组件、作者、版本、变更日志)以实现预期结果
var component = (document.getElementById("component").value);
var author = (document.getElementById("author").value);
var version = (document.getElementById("version").value);
var changelog = (document.getElementById("changelog").value);
代码笔-供参考
这两个警报将在正确的ID后工作
问题:
由于id值不正确,字段值始终为空,因此您每次只能收到第一个警报。使用正确的id-(组件、作者、版本、更改日志)以获得预期结果
var component = (document.getElementById("component").value);
var author = (document.getElementById("author").value);
var version = (document.getElementById("version").value);
var changelog = (document.getElementById("changelog").value);
代码笔-供参考
这两个警报将在正确的ID后工作
问题:
由于id值不正确,字段值始终为空,因此您每次只能收到第一个警报。您的代码工作正常,但仍有一些问题:
- 获取输入值时无需使用
&(
)
- 您可以使用
,而不是使用
代码>在比较时没有值==
if(!component | | |!author | | |!version | | |!changelog){…}
代替if(component==“”| | author==“”| version==“”| changelog==“”{…}
演示
函数myFunction(){
var component=document.getElementById(“component”).value;
var author=document.getElementById(“author”).value;
var version=document.getElementById(“version”).value;
var changelog=document.getElementById(“changelog”).value;
如果(!组件| | |!作者| |!版本| |!变更日志){
警告(“请填写所有字段”);
}否则{
警报(“提交完成”);
}
};代码>
插入组件:
作者:
版本:
更改日志:
您的代码运行良好,但仍有一些观察结果:
- 获取输入值时无需使用
(
&)
- 您可以使用
,而不是使用==
代码>在比较时没有值
使用if(!component | | |!author | | |!version | | |!changelog){…}
代替if(component==“”| | author==“”| version==“”| changelog==“”{…}
演示
函数myFunction(){
var component=document.getElementById(“component”).value;
var author=document.getElementById(“author”).value;
var version=document.getElementById(“version”).value;
var changelog=document.getElementById(“changelog”).value;
如果(!组件| | |!作者| |!版本| |!变更日志){
警告(“请填写所有字段”);
}否则{
警报(“提交完成”);
}
};代码>
插入组件:
作者:
版本:
更改日志:
js代码中的ID错误-ID区分大小写。您的html将ID显示为小写,但您正在搜索它们,第一个字母为大写字母。fyi您可以省略每个文档周围的括号。getElementById(“XXX”)。value
。很抱歉,我发布了一个旧版本。它不适用于小写的IDeither@AlessandroMecchia,请检查,在使用正确的ID后,您的js代码中的ID是错误的-ID区分大小写。您的html将ID显示为小写,但您正在搜索它们,第一个字母为大写字母。fyi您可以省略每个文档周围的括号。getElementById(“XXX”)。value
。很抱歉,我发布了一个旧版本。它不适用于小写的IDeither@AlessandroMecchia,请检查,在使用正确的ID后,它工作是@JimishFotariya,即使我试图知道,如果有人给downvote留下评论也会很好..也给我downvote:(是的@jimisshfotariya,即使我也在努力知道,如果有人留下评论,让我投下选票,那也会很好的..也要投我的下票:(