2011-04-21 56 views

回答

8

试试这个:

if ($('#StartingPrice')[0].value.length == 0){ 
    alert("ERROR!"); 
} 
8

$('#StartingPrice').length返回一个整数,所以它永远不会平等""

尝试使用val()方法:

if($('#StartingPrice').val() == "") 
{ 
    alert("ERROR!"); 
} 

.length

在jQuery对象元素的数量。

.val()

获取匹配的元素集合的第一个元素的当前值。

.value

没有这样的jQuery的方法已存在

+1

10秒。你一定是被骗了。 – Raynos 2011-04-21 15:58:52

+3

怎么......敢...你 – hunter 2011-04-21 15:59:28

+0

@雷诺斯 - 请在这里没有比赛。我们都在这里互相帮助。没有竞争。 – 2011-04-21 16:00:46

1
if ($('#StartingPrice').val() == ""){ 
    alert("ERROR!"); 
} 

如果你的文本输入的数值可以是任何空字符串则是空的。

-3

尝试:

if(myStr){ 
    // Your code here 
} 
+0

是什么?这是什么意思 – Neal 2011-04-21 15:59:28

+0

如果有一个“拒绝”选项,这将取得胜利 – hunter 2011-04-21 16:08:10

2
if ($('#StartingPrice').val() === ""){ 
    alert("ERROR!"); 
} 
1

我想你想要这样的:

if ($('#StartingPrice').val() == false) { 
    alert("Error!"); 
} 

使用.VAL()方法来获取值然后将其传递给if。如果字符串是空白或空格,则它将评估为false。

+1

不适用于输入字段。 – 2011-04-21 16:02:05

+0

已修复,我输入得太快了! – d4nt 2011-04-21 16:04:08

3

就像已经提供的解决方案的替代方案一样...您也可以使用Regex来测试它实际上是否包含空白以外的内容。

!!$('#StartingPrice').val().match(/\S/) 

这将测试一个非空白字符的存在,并使用Not-Not将它转换为一个布尔值给你。如果它包含非空格,则为真。如果空白或只有空格,则为假。

+0

你仍然需要使用'val()'而不是'value()' – hunter 2011-04-21 16:09:07

+0

将value()编辑为val()。 – 2011-04-21 16:17:29

相关问题