或 jquery 的运算符无法按我的预期工作..?
$('input[TYPE="SUBMIT"]').click(function(){
if ($('input[TYPE="TEXT"').val().length===0 || $('textarea').val().length===0)
{
console.log($('input[TYPE="TEXT"').val().length);
console.log($('textarea').val().length);
return false;
}
});
chrome 突出显示了我的 if 语句。我真的不明白这里有什么问题。我想我可以向这两个字段添加一个类,但我的布局实际上并不需要它。我是否以某种方式写错了?
$('input[TYPE="SUBMIT"]').click(function(){
if ($('input[TYPE="TEXT"').val().length===0 || $('textarea').val().length===0)
{
console.log($('input[TYPE="TEXT"').val().length);
console.log($('textarea').val().length);
return false;
}
});
chrome highlights my if statement. I really don't see what's wrong here. I suppose I could add a class to both fields, but I don't really need that for my layout. Am I writing this incorrectly somehow?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
我立即注意到
$('input[TYPE="TEXT"')
应该是
$('input[TYPE="TEXT"]')
注意但是,进行这样的选择只会检查它找到的第一个文本框/文本区域的长度,而不是每个文本框/文本区域的长度。
在这种情况下,您需要的是这样的:
更好的是为提交按钮提供适当的 ID,为输入元素提供一些其他属性,这样您就不会意外地在验证中包含其他控件。
What I've immediately noticed is that
$('input[TYPE="TEXT"')
should be
$('input[TYPE="TEXT"]')
Note, however, that making a selection like this will only check the length of the first textbox/textarea it finds, not each of them.
What you'd need in that case would be something like this:
Even better would be giving the submit button a proper ID and the input elements some other attribute, so you don't accidentally include other controls in the validation.
看起来您的
'input[TYPE="TEXT"'
在很多地方都缺少]
,这可能是问题所在吗?It looks like you have
'input[TYPE="TEXT"'
with a missing]
in quite a few places, could that be the problem?$('input[TYPE="TEXT"/*]*/')
你忘记了
]
我建议你使用
:text
伪选择器;)$("input:text");
:文本
$('input[TYPE="TEXT"/*]*/')
You forgot the
]
I recommend you use the
:text
pseudo selector instead ;)$("input:text");
:text