Jquery addClass问题

时间:2010-10-12 06:37:30

标签: jquery

有人可以告诉我这是做什么的吗?我应该如何在我的HTML中引用它?我想要的是回显html中的错误信息。

  $('#' + $field)
    .addClass('invalid')
    .siblings('.error')
      .text($message)
      .show();

2 个答案:

答案 0 :(得分:1)

  $('#' + $field)  
  // finding an element that has the `id` of the string/object referred to by $field
    .addClass('invalid')
     // adding the class-name 'invalid' to this element
    .siblings('.error')
      // selecting the sibling element of class-name 'error'
      .text($message)
      // replacing the text of that sibling, if any, with the value represented by the variable '$message'
      .show();
        // showing/un-hiding that element.

您可以首先将一个元素分配给$field,添加一个类名“错误”的元素作为该元素的兄弟,并为$message变量分配一个消息。 / p>

<小时/> 已编辑以回应OP的澄清请求(在评论中)。

作为一个相当基本的例子:

$(document).ready(
    function(){
        var $field = $('input[name=fieldName]').attr('id');
        var error = 'This field needs something else. Such as...';

        $('#'+$field).addClass('invalid').siblings('.error').text($message).show();
    }
);

<form action="" method="get">
    <fieldset>
        <label for="fieldName">This is a label:</label>
        <input type="text" name="fieldName" id="fieldName" />

        <div class="error"></div>
    </fieldset>
</form>

Rudimentary demo at JS Fiddle

答案 1 :(得分:0)

将类名“invalid”(class =“invalid”)添加到所选字段,然后使用类“.error”更改兄弟姐妹中的文本并显示它们(删除display:none)。