我需要帮助将多个if语句放入我的函数中。我需要检查以确保它们是input1(名字)input2(lastname)input6(email)和input8(消息框)中的输入。我需要它然后弹出警报,如果一个字段为空并说明是什么字段。我之前使用单独的函数对其进行编码,然后在提交时调用函数,但随后它会弹出所有警告,表示该字段为空。我宁愿让它只弹出一个警报,然后返回false以退出脚本,这样它就不会通过4个警报向你发送垃圾邮件然后取消脚本。谢谢!
更新:我有它为我需要的前三个字段(First / Lastname和email)工作我只需要为消息框添加警报,但似乎.length不适用于消息框...有任何想法吗?我尝试过和其他人一样,但它打破了代码,什么也没做。
<!DOCTYPE html>
<html>
<head>
<title>Contact Us</title>
<link rel="stylesheet" type="text/css" href="view.css" media="all">
<script type="text/javascript" src="view.js"></script>
</head>
<body id="main_body" >
<div id="form_container">
<form id="form_1121982" class="appnitro" enctype="multipart/form-data" method="post" action="">
<div class="form_description">
<p></p>
</div>
<h1 align="center">Contact Us</h1>
<ul >
<li id="li_1" >
<label class="description" for="element_1">Name </label>
<span>
<input id="input1" name= "input1" class="element text" maxlength="255" size="8" value=""/>
<label>First</label>
</span>
<span>
<input id="input2" name= "input2" class="element text" maxlength="255" size="14" value=""/>
<label>Last</label>
</span>
</li> <li id="li_2" >
<label class="description" for="element_2">Phone </label>
<span>
<input id="input3" name="input3" class="element text" size="3" maxlength="3" value="" type="text"> -
<label for="input3">(###)</label>
</span>
<span>
<input id="input4" name="input4" class="element text" size="3" maxlength="3" value="" type="text"> -
<label for="input4">###</label>
</span>
<span>
<input id="input5" name="input5" class="element text" size="4" maxlength="4" value="" type="text">
<label for="input5">####</label>
</span>
</li> <li id="li_3" >
<label class="description" for="input6">Email </label>
<div>
<input id="input6" name="input6" class="element text medium" type="text" maxlength="255" value=""/>
</div>
</li> <li id="li_4" >
<label class="description" for="input7">Upload a File </label>
<div>
<input id="input7" name="input7" class="element file" type="file"/>
</div>
</li> <li id="li_5" >
<label class="description" for="input8">Paragraph </label>
<div>
<textarea id="input9" name="input8" class="element textarea medium"></textarea>
</div>
</li>
<li class="buttons">
<input type="hidden" name="form_id" value="1121982" />
<input id="saveForm" class="button_text" type="button" name="submit" value="Submit" onclick="myFunction1();" />
<input type="reset" value="Reset">
</li>
</ul>
</form>
<div id="footer">
</div>
</div>
</body>
</html>
function myFunction1()
{
var field1 = document.getElementById("input1").value.trim(); //checks length of first name
var field2 = document.getElementById("input2").value.trim(); //checks length of first name
var field6 = document.getElementById("input6").value.trim(); //checks length of first name
if ( field1.length == 0 )
{
alert("Please Fill In Your First Name");
return false;
}
else if ( field2.length == 0 )
{
alert("Please Fill In Your Last Name");
return false;
}
else if( field6.length == 0 )
{
alert("Please Fill in Your Email");
return false;
}
}
答案 0 :(得分:2)
将回报放在if语句中。
if (field1.length == 0) {
alert("Please Fill In Your First Name");
return false;
}
要回答你问题的第二部分,虽然你还没有提供关于你如何获得textarea的javascript。
首先,您的命名惯例并不好。你应该使用有意义的东西,这样你就不会犯错误,我认为你在这里做过。
<textarea id="input9" name="input8" class="element textarea medium"></textarea>
您的textarea id=input9
name=input8
。根据你最初的做法,它应该是id=input8
?
对于您的字段,请使用标签的命名。例如id=Firstname
,id=Email
等