2010-03-01 87 views
6

我有一個文本區域需要填寫,然後才能繼續執行特定的過程。選擇空白TextArea的值=''選擇器

對於普通文本框,我可以通過添加屬性選擇器[value ='']選擇字符串來檢索所有空白輸入。

當我這樣做與文本區域不起作用。

如果我在IE中,而不是在嚴格模式下,它確實有效,但我不是我想做的事情。

如果我先選擇所有文本區域,然後使用[value ='']作爲選擇器執行過濾器調用,它將起作用。

這是設計嗎?從立場來看,文本區域並沒有真正的價值屬性,但我猜測過濾器調用不起作用。

下面是一個例子代碼:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"> 
<HTML> 
<HEAD> 
    <SCRIPT SRC="jquery-1.4.2.min.js"></SCRIPT> 

    <SCRIPT> 
     $(function() { 
      var Rslt1 = $("textarea[value='']").size(); 
      var Rslt2 = $("textarea").filter("[value='']").size(); 
      alert(Rslt1 + ' ' + Rslt2); 
     }) 
    </SCRIPT> 
</HEAD> 
<BODY> 
    <TEXTAREA></TEXTAREA> 
</BODY> 
</HTML> 

在IE 8,鉻4和Firefox 3.6的結果爲0 1如上所述。

+0

我發現它使用.filter是我的最佳選擇:http://stackoverflow.com/a/16002674/1090274 –

回答

10

Textarea沒有「值」屬性。嘗試$("textarea:empty")

+1

你試過使用$(「textarea:not(:empty)」)?我用這個來獲得非空的textarea,但是結果總是空的,即使textarea已經被填充了。 – Praditha

+0

@Praditha,$(「textarea」)。not(「:empty」)怎麼樣?還沒有嘗試過,但我發現功能,而不是選擇器有時更可靠。 –