Wor*_*sor 17 validation ajax jquery
我有一个我要验证的输入:
<input type="text" id="input" />
Run Code Online (Sandbox Code Playgroud)
这是JS:
jQuery("#input").live('change', function() {
if("#input:not(:empty)") {
alert('not empty');
}
else if("#input:empty") {
alert('empty');
}
});
Run Code Online (Sandbox Code Playgroud)
即使"#input"为空,也无法用"空"消息显示警报.所以,基本上,无论我做什么,只有第一个陈述是真的,第二个陈述是假的,总是如此.
怎么了?
Gor*_*son 26
JQuery的:空选择器选择页面上所有空的元素,因为它们没有子元素,包括文本节点,而不是所有没有文本的输入.
这是从上面的线程中窃取的代码:
$('#apply-form input').blur(function() //whenever you click off an input element
{
if( !$(this).val() ) { //if it is blank.
alert('empty');
}
});
Run Code Online (Sandbox Code Playgroud)
这是因为JavaScript中的空字符串是'假值',这基本上意味着如果您尝试将其用作布尔值,它将始终求值为false
.如果需要,可以更改条件以$(this).val() === ''
增加清晰度.:d
你可以这样做
$("#input").blur(function(){
if($(this).val() == ''){
alert('empty');
}
});
Run Code Online (Sandbox Code Playgroud)
http://jsfiddle.net/jasonennaro/Y5P9k/1/
当输入丢失时focus
,即.blur()
检查 的值#input
。
如果它是空的,== ''
则触发警报。
归档时间: |
|
查看次数: |
98427 次 |
最近记录: |