Вопрос

Предполагается, что iPad Safari совместим с HTML5, но кажется, что необходимый элемент не работает.Кто-нибудь знает, почему, или у вас есть достойное обходное решение, не требующее тонны JavaScript?

Мой код

<input type=email class=input placeholder="Email" name="email" required>
Это было полезно?

Решение

Это еще не поддерживается в iOS: Когда я могу использовать: обязательно .

Другие советы

Это решение jQuery к проблеме, оно подчеркивает поля ввода, которые тоже не удалось в розовом цвете.

$('form').submit(function(){
    var required = $('[required="true"]'); // change to [required] if not using true option as part of the attribute as it is not really needed.
    var error = false;

    for(var i = 0; i <= (required.length - 1);i++)
    {
        if(required[i].value == '') // tests that each required value does not equal blank, you could put in more stringent checks here if you wish.
        {
            required[i].style.backgroundColor = 'rgb(255,155,155)';
            error = true; // if any inputs fail validation then the error variable will be set to true;     
        }
    }

    if(error) // if error is true;
    {
        return false; // stop the form from being submitted.
    }
});
.

Поскольку iOS 10.3 Этот атрибуты поддерживаются.Также тип электронной почты требует записи символа @ и так далее ...

Если вы уже используете jQuery, Modernizr и yepnope, это один из способов справиться с этим.Если вы не тогда, это добавит много дополнительного JavaScript.

Мой решение

Я думаю, вы можете что-то сделать перед отправкой, вот так

<form name="myForm" action="valid.html" onsubmit="checkValid()" method="post">
  ... ...
</form>

после нажатия submit кнопка, checkValid() вызывается до того, как оно фактически подчинится.возвращаемое значение trueпродолжит действие отправки.

Ссылаться на эта почта для дальнейшего объяснения. :)

Если вы используете PHP, вы можете добавить подобную проверку

function validation(){

  if(isset($_POST['submit'])){
  $email = $_POST['email'];

     if(empty($email)){
        echo $error = "Your email cannot be empty";

      } else {
        return true; //or do something next here
     }
   }
.

Затем вы добавляете эту функцию в PHP перед формой.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top