2

这是我的 html(我刚刚在其中添加了 textarea):

<form>
<div id="input_wrapper">
    <label for="name">Name:</label>
        <input type="text" name="name" value=""/>
        <label for="phone">Phone:</label>
        <input type="text" name="phone" value=""/>
        <label for="email">Email:</label>
        <input type="text" name="email" value="" />
        <label for="textbox">Comments:</label>
        <textarea name="textbox" rows=3 cols=30 ></textarea>

        <input type="submit" value="" />
    </div>
</form>

这是代码的另一部分:

 $('form').submit(function (e) {
    var flag = true;
            var inputs = $(this).find('input[type="text"]');

            inputs.each(function(){
                if ($(this).val() === ''){
                    //$(this).addClass('invalid');
                    $(this).prev().addClass('invalid');
                    if ($(this).next().is('span') === false){
                        $(this).after('<span>' + $(this).attr('name') + ' is required</span>');
                    }
                flag = false;
                }else{
                    $(this).removeClass('span');
                    $(this).prev().removeClass('invalid');
                    if ($(this).next().is('span')){
                        $(this).next().remove();
                    }
                }
            });
            if (flag === false) {
            e.preventDefault();
            }
});

我需要在 jquery 中包含我的 textarea 并且它必须以与输入相同的方式工作。

4

3 回答 3

2

只需更改这一行就可以解决问题...

var inputs = $(this).find('input[type="text"], textarea');
于 2013-01-29T13:10:59.760 回答
1

它可能不是你所追求的,但是......验证插件不是一个选项吗?

更多信息:http ://docs.jquery.com/Plugins/Validation

于 2013-01-29T13:10:23.983 回答
0

只需将其添加到选择器中:

var inputs = $(this).find('input[type="text"], textarea');

在 jQuery 选择器中,您可以使用逗号列出多个项目。它被称为多重选择器

选择所有指定选择器的组合结果。

于 2013-01-29T13:11:08.903 回答