如果某个文本框不为空(即包含某些内容,可能是任何内容),我正在尝试解决该怎么做的问题
这是我的代码(似乎不起作用)
if ( !($('#edit-sPostalCode').attr('val','')) ) {
stuff here
}
我错过了什么?
答案 0 :(得分:12)
if ( $('#edit-sPostalCode').val() != '' ) {
stuff here
}
$('#edit-sPostalCode').attr('val','')
实际上会创建一个值为''
的输入框的属性,然后返回一个jQuery对象。
然后说!($('#edit-sPostalCode').attr('val',''))
将否定该jQuery对象。由于JS中对象的实例为truthy,因此该表达式的结果始终为false
。
答案 1 :(得分:2)
您是否了解.val
方法?
if ( $('#edit-sPostalCode').val() !== '' ) {
如果你认为空格完全等同于任何东西,你应该$.trim
值:
if ( $.trim( $('#edit-sPostalCode').val() ) !== '' ) {
答案 2 :(得分:0)
if ( !($('#edit-sPostalCode').val() === '') ) {
stuff here
}