【问题标题】:errorPlacement in jquery validation not workingjQuery验证中的errorPlacement不起作用
【发布时间】:2017-01-10 11:01:56
【问题描述】:

这是我的代码。当我验证它的性别和爱好时,会在第一个无线电输入之后而不是最后出现一条消息, 我已经尝试过错误放置,但机器人还在工作吗?

<tr>
    <td>Gender:</td>
    <td>
        <input type="radio" name="gender"  value="male" <?php if($a['gender']=='male'){ ?> checked <?php } ?> >Male
        <input type="radio" name="gender"  value="female" <?php if($a['gender']=='female'){ ?> checked <?php } ?> >Female
    </td>
    <td class="err"></td>
</tr>

<tr>
    <td>Hobbies:</td>
    <td>
        <input type="checkbox" name="hobbies[]"  value="cricket" <?php if(in_array(cricket,$a['hobbies'])){ ?> checked <?php } ?> >Cricket 
        <input type="checkbox" name="hobbies[]" value="chess"  <?php if(in_array(chess,$a['hobbies'])){ ?> checked <?php } ?>>chess 
        <input type="checkbox" name="hobbies[]"  value="wally"  <?php if(in_array(wally,$a['hobbies'])){ ?> checked <?php } ?>>Wally 
        <input type="checkbox" name="hobbies[]"  value="football"  <?php if(in_array(football,$a['hobbies'])){ ?> checked <?php } ?>>football
    </td>
    <td class="err"></td>
</tr>

jquery

<script>
errorPlacement: function(error, element) {
        if (element.attr("name") == "gender" )
            error.insertAfter(".err");
        else if  (element.attr("name") == "hobbies" )
            error.insertAfter(".err");
        else
            error.insertAfter(element);
    }
</script>

【问题讨论】:

  • $(element).closest('td').next().find('.err').html(error);
  • 我的输入文本很少,只有一种性别和一种爱好,那么如何将不同的位置应用到它们上面不起作用?

标签: javascript php jquery validation


【解决方案1】:

请使用 InnerHTML 来更新信息。

$( ".err" ).html('your error output');

【讨论】:

    【解决方案2】:

    您想在&lt;td class="err"&gt; 之后插入元素,所以这不是一个好主意。更好的方法可能是将元素放在标签 &lt;td&gt; 最后。例如:$('.err').append('Error message');

    爱好输入名称应为“爱好[]”

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-01-14
      • 2011-02-16
      • 1970-01-01
      • 1970-01-01
      • 2012-02-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多