2016-04-15 2 views
0

Мне нужна помощь, поместив несколько операторов if в мою функцию. Мне нужно его проверить, чтобы убедиться, что это вход в input1 (первое имя) input2 (lastname) input6 (email) и input8 (окно сообщения). Мне нужно, чтобы оно появилось предупреждение, если одно поле пуст и укажите, в каком поле. Я предварительно закодировал его с помощью отдельных функций, а затем вызвал функции для отправки, но затем всплывает все предупреждения, ожидая, что поле пуст. Я предпочел бы, чтобы это всплыло только одно предупреждение, а затем вернуло false, чтобы выйти из сценария, чтобы он не спам с 4 предупреждениями, а затем отменил скрипт. Благодаря!Проблема с Javascript, если оператор, который вызывает различные сообщения оповещений

Обновление: У меня есть работа для первых трех полей, которые мне нужны (первое/последнее имя и адрес электронной почты). Мне просто нужно добавить предупреждение для окна сообщения, но оно кажется .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; 
     } 
} 

ответ

2

Место возвращение в ваш если заявления.

if (field1.length == 0) { 
    alert("Please Fill In Your First Name"); 
    return false; 
} 

Чтобы ответить на вторую часть вашего вопроса, если вы не снабжали JavaScript о том, как вы пытаетесь получить текстовое поле.

Во-первых, ваше соглашение об именах не очень велико. Вы должны использовать что-то значимое, чтобы не ошибаться, я думаю, что вы здесь сделали.

<textarea id="input9" name="input8" class="element textarea medium"></textarea> 

Ваше текстовое поле имеет id=input9 с name=input8. Идя по тому, как вы делали это первоначально, это должно быть id=input8?

Для ваших полей используйте наименования ваших ярлыков. Например: id=Firstname, id=Email и т. Д.

+0

Спасибо! Это заставило его отказаться от idk, почему у меня было это на улице. У меня есть другой вопрос, который он обновил выше. –

+0

@AndrewRibicki Если это совершенно другой вопрос, тогда вы должны сделать отдельный пост вместо редактирования текущего вопроса. – 4castle

+0

@ 4castle Это в основном тот же вопрос, поэтому я просто добавил его и оставил предыдущий вопрос –

Смежные вопросы