2016-10-12 3 views
0

У меня есть html-страница с разделом ввода и кнопкой отправки. Раздел ввода вводит строку. Затем строка передается в функцию javascript, и когда нажата кнопка «отправить», для проверки длины этой строки используется оператор if. Если строка имеет длину 20 символов, теоретически она должна перенаправить пользователя на другой веб-сайт. Это код, который я должен сделать это:Переадресация Javascript при выполнении условия

function validate() { 
 
var value = document.getElementById('myfunction').value; 
 
if (value.length == 20) { 
 
    window.location.href ="http://www.example.com"; 
 
} 
 
else{ 
 
    return false; 
 

 
} 
 
}
<input style = "margin-right: 8px;" type = "text" name = "con" id = "myfunction" required=''/> 
 
<input type = "submit" value = " Submit " class='next btn btn-primary' id = "buttonze" onclick = "validate();"/><br />

После запуска кода со строкой, которая является 20 символов, ничего не происходит. По какой-то причине он не перенаправляет меня на example.com. Я не уверен, что я делаю неправильно, и надеялся, что кто-то может указать мне на это. Я знаю, что он выполнил оператор if, потому что я поместил инструкцию для проверки, и он успешно появился, когда я ввел оператор.

+0

он работает нормально. –

+0

работает, Chrome, Windows – Ivan

ответ

1

Если вы используете сафари, вам нужно добавить return false к onclick:

onclick = "validate();return false;" 
0

изменение типа "представить" на "кнопку", см answer

<input type="button" value="Submit" class="next btn btn-primary" id = "buttonze" onclick = "validate()"/> 

example

0

Этот код должен работать:

<html> 
<body> 
    <input style="margin-right: 8px;" type="text" name="con" id="myfunction" required='' /> 
    <input type="submit" value="Submit" class='next btn btn-primary' id="buttonze" onclick="validate();" /><br /> 
    <script> 
     function validate() { 
      var value = document.getElementById('myfunction').value; 
      if (value.length == 20) { 
       window.location.href = "http://www.example.com"; 
      } 
      else { 
       return false; 

      } 
     } 
    </script> 
</body> 

</html>