这是我的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,它必须以与输入相同的方式工作。
答案 0 :(得分:2)
只需改变这一行应该可以解决问题......
var inputs = $(this).find('input[type="text"], textarea');
答案 1 :(得分:1)
它可能不是你想要的,但是......不是验证插件的选项吗?
答案 2 :(得分:0)
只需将其添加到选择器中:
var inputs = $(this).find('input[type="text"], textarea');
在jQuery选择器中,您可以使用逗号列出多个项目。它被称为Multiple Selector:
选择所有指定选择器的组合结果。