0

我有一个表单,在提交时我需要使用 jQuery 在客户端添加一条错误消息。

表单 HTML(由其他人)是 -

<div class="data">
<h3>Datos de acceso</h3>
<p class="email-login">
    <label for="email-login">Su correo electrónico</label>
    <input id="email-login" name="email-login" type="text" value="Su correo electrónico">
</p>
<p class="password-login">
    <label for="password-login">Elija una contraseña</label>
    <input id="password-login" name="password-login" type="text" value="Elija una contraseña">
</p>
<h3>Datos personales</h3>
<p>
    <label for="name">Nombre y apellidos</label>
    <input id="name" name="name" type="text" value="Nombre y apellidos">
</p>
<div class="data1">
    <p class="gender">
        <span class="female">
            <label for="gender-female">Mujer</label>
            <input id="gender-female" name="gender-female" type="radio" value="Mujer">
        </span>
        <span class="male">
            <label for="gender-male">Hombre</label>
            <input id="gender-male" name="gender-male" type="radio" value="Hombre">
        </span>
    </p>
    <p class="age select">
        <select>
            <option value="" selected="selected">Edad</option>
        </select>
    </p>
</div>
<div class="data2">
    <p class="country select">
        <select></select>
    </p>
    <p class="postal">
        <label for="postalcode">post code</label>
        <input id="postalcode" name="postalcode" type="text" value="post code">
    </p>
</div>
<div class="terms">
    <input type="checkbox" name="terms" value="Acepto las condiciones">
    <p class="checkbox"></p>
    <p>words<a href="#">?</a></p>
</div>
<p class="submit">
    <input class="button" type="submit" value="Conectar">
</p>

我目前有这个 jQuery(它不工作)

$(document).ready(function() {
    $('input').each(function() {
        var $this = $(this);
        if(!$this.val()) $this.addClass('error');
    });
});

客户端现在需要为每个表单元素提供不同的错误消息。因此,将姓名、性别、邮政编码等错误附加到表单中。那可能吗?我在我的 jQuery 中做错了什么导致它不起作用?

4

2 回答 2

0

一个好的起点是将 jQuery 的提交方法应用于您当前的 jquery 逻辑。他们还在同一个 API 页面上提供了一个输入验证示例。

于 2013-03-11T11:49:03.240 回答
0
$(document).ready(function() {
   var count=0;
    $('input').each(function() {
       count++;
      var myvar =error+count;
        var $this = $(this);
        if(!$this.val()) $this.addClass(myvar );
    });
});

并为这些错误消息编写不同的分类

或以其他方式使用 eroor 消息构建数组,其名称为类名, 如 var

 myarray =new arrau();
  myarray .push(eroorthatwahtuwantname);


$(document).ready(function() {

    $('input').each(function() {


        var $this = $(this);
             var req=this.name();
        if(!$this.val()) $this.addClass(getNmae(req,myarray ) );
    });


function getNmae (str, strArray) {
    for (var j=0; j<strArray.length; j++) {
        if (strArray[j].match(str)) return j;
    }
    return -1;
}
于 2013-03-11T12:50:10.977 回答