2013-12-14 2 views
0

에 배열의 길이를 얻을 수 없다 내가 자바 스크립트 배열을 가지고 MVC 모달에서 그것을 데이터를 입력 :내가 자바 스크립트

<script type="text/javascript"> 
    var letterOfResponsibilityNotes = Array(0); 

    @if (Model.Step2.SelectedCountryList.Count != 0) 
    { 
     foreach (var item in Model.Step2.SelectedCountryList) 
     { 
      <text>letterOfResponsibilityNotes["@item.Code"]='@item.LetterOfResponsibilityNote'</text> 
     } 
    } 

가 그럼 난 letterOfResponsibilityNotes 배열의 길이 좀하려고 :

if ($(letterOfResponsibilityNotes).length > 0) 
{ ... } 

을하지만, 나는 항상 lenth = 0을 얻지 만 FireBug의 데이터를 보았습니다.

감사합니다.

답변

1

을 실패합니다.

var a = new Array(0); 
a["test1"] = "test1"; 
a["test2"] = "test2"; 

// a.length is still 0 - although it has contents 

a["3"] = "try a number"; 

// now a.length == 4, which is highest number subscript key + 1 
// unfortunately that is how JS arrays work 

배열의 길이가 Length of a javascript associative array

+0

대단히 감사합니다! – IFrizy

0

이 시도 : IF에 '$'

first initialize the as follow in JavaScript. 

var letterOfResponsibilityNotes = new Array(); 

console.log(letterOfResponsibilityNotes.length); 

if(letterOfResponsibilityNotes.length > 0) 
{ 

} 

if array have any value it display length of array. 
+0

예, 나는 그것을 할,하지만 난 아직도 길이 = 0을 걸보고 찾으려면! – IFrizy

+0

배열을 인쇄하십시오. –

+0

http://screencast.com/t/GtjXk2xAI – IFrizy

0

삭제합니다. @item.Code이 숫자가 아니기 때문에 $와

if ((letterOfResponsibilityNotes).length > 0) 
{ ... } 

내가 가진이의

Uncaught ReferenceError: $ is not defined

+0

네, 해봤지만 길이는 여전히 0입니다! – IFrizy

+0

배열의 입력 데이터가 올바른지 여부를 제어하는'letterOfResponsibilityNotes.length'가있는 각 루프마다 'sneak'(죄송합니다.이 XD의 영어 이름을 모르겠습니다.) – TiGreX

관련 문제