2011-07-21 28 views
0

我得到的元素作爲我應該如何從JavaScript對象中獲取一定的價值,並檢查空

var minPricePerInputField = $("input#A"+indexNr); 

元素可以存在也還是不還。我得到一些[對象對象]的東西。我不知道這是什麼。當元素不在時,我正在接收這個[object Object]。

+0

如果你使用螢火蟲(或其他類似的),你可以斷點瀏覽器中的代碼,並看看對象,這將幫助你沒有結束。 – RubbleFord

回答

1

使用查看數據

if( $(minPricePerInputField).length === 0); 

意味着空。該選擇器沒有元素。

+0

只有「==」而不是「===」!謝謝。 –

+0

@Saurabh Kumar nops這將是「===」。閱讀http://stackoverflow.com/questions/3735939/jslint-expected-and-instead-saw瞭解更多詳情。 –

0

[object Object]Object的默認toString()

當在String上下文中使用Object時,將隱式調用toString()

jQuery是否匹配0個或更多元素不會影響toString()

jsFiddle

您可以檢查length屬性以檢查選擇器是否匹配任何元素。

jsFiddle

0

得到一個對象的值..使用object.property

最好的辦法:使用jQuery ...通過console.log(minPricePerInputField)

+0

這會記錄'[Object object]'。即使沒有找到匹配的元素,暫時的jQuery對象仍然會被創建並返回... –

+0

然後使用上面的方法.. :) – diEcho

1

您正在接收jQuery對象。如果沒有這樣的元素,則收到對象的length屬性爲0。

0
var minPricePerInputField = $("input#A"+indexNr); 

if(minPricePerInputField.size()==1) 
{ 
    //element exists do something 
} 
0
if($("input#A"+indexNr).length == 1){ 
     alert("Im present"); 
    } 
0

,您可以檢查所選元素計數的計數。

var minPricePerInputField = $("input#A"+indexNr); 
if(minPricePerInputField.length == 0){ 
    return; 
}