1

如果验证失败,我正在使用 jQuery 验证生成自定义消息。默认情况下,消息将位于它正在验证的输入字段的右侧。我希望此消息始终位于字段标题的右侧。

例如,我希望它看起来像这样:http: //jsfiddle.net/zWgbP/

我玩过添加:

    errorPlacement: function (error, element) { 
            error.insertBefore(element);    
         },  

...但这不太正确,因为我需要它在标题“姓氏”之后的休息时间之前出现。

如果我将字段标题包围在 span 或 div 中并使用下面的 jQuery 方法给它一个 id,是否有更好的方法来定位字段标题?

如果没有,有没有更好的方法?

JAVASCRIPT

$(document).ready(function() {

// validate signup form on keyup and submit
$("#newform").validate(  

    rules: {
        lastname: {
            required: true, 
            minlength: 2            
        },

    messages: {
        lastname: {
            required: "* please fix",
            minlength: "* please fix"
        },

HTML

<form name="newform" id="newform" method="post" onsubmit="return OnNewButton();">

<input type='text' id='lastname' name='lastname' size='20' value = "" />

</form>

CSS

<style type="text/css">
#newform label.error {
color: red;
font-size: 15px;
}
</style>
4

1 回答 1

0

答案是在我的 jQuery 中添加以下 errorPlacment 选项:

errorPlacement: function(error, element) {
    error.appendTo('#title-' + element.attr('id'));
},    

然后我改变了这个:

Last Name<br />

进入

<span id="title-lastname">Last Name</span><br />

正在验证的文件的 id 是“姓氏”。

这样做会将我的错误消息完美地附加到 break br 之前的 span 中。

谢谢大家的帮助。

于 2013-05-16T22:12:29.913 回答