2015-11-17 69 views
0

我想在select元素上使用onchange狀態來檢查select的值是否在數組中。JS檢查JQuery中inArray

我嘗試這樣做:

function statutEmployeur(){ 
    statliste = []; 
    statliste.push(1); 
    statliste.push(2); 
    statliste.push(5); 
    statid = jQuery("#statut").val(); 
    if(jQuery.inArray(statid,statliste)>-1){ 
     alert('inside array'); 
    }else { 
     alert('outside array'); 
    } 
} 

,我試圖每個值是所述陣列的外部。 有人可以幫助我嗎?

感謝

+0

嘿那裏我很樂意幫助你,介意把你當前的代碼(html,js)上傳到jsbin中?使您更容易給你具體的建議。 – Prefix

+2

這可能是一個類型問題? ''1「'不被認爲是在[[1,2,5]' – Stryner

回答

1

在評論中指出的Stryner,嘗試運行您的.val()通過parseInt(),以確保您中堂數值(而不是字符串)

statid = jQuery("#statut").val(); 

到:

statid = parseInt(jQuery("#statut").val(), 10); 

工作小提琴:http://jsbin.com/maqesupuka/edit?html,js,console,output

問題是您在數組中搜索某種類型的字符串(默認輸入類型),但您的數組只包含數字。你可以將你的數組變成數字,或者像上面那樣進行類型轉換,以確保你使用相同的類型。

+0

的數組中]謝謝!它工作得很好ith parseInt()! – Albedo0

+0

不客氣!樂意效勞。 :) – Prefix