2017-12-29 7 views
1

안녕 얘들 아 stackoverflow에서 내 주먹 사람.구문 오류, 인식 할 수없는 표현 Jquery

저는 json을 제공하는 아주 작은 웹 서비스를 가지고 있습니다.

{ 
    "status": 1, 
    "info": [{ 
     "URLREST": 0, 
     "URLGEPLANT": 0, 
     "URLGESAMT": 35 
    }], 
    "anwesend": "Name 1#Name 2#Name 3#Name 4#" 
} 

그리고 JavaScript에는 구문 오류가 있습니다. 나는 어리 석다. 내 Json에 문제가 있습니까? 아니면 내 JQuery 코드로?

Error: Syntax error, unrecognized expression: Name 1#Name 2#Name 3#Name 4#

jquery-3.2.1.min.js:2:13370

$.ajax({ 
    url: url, 
    dataType: 'json', 
    success: function(data) { 

     $(data.info).each(function(index,value) {  
      document.getElementById('URLREST').innerHTML = value.URLREST; 
      document.getElementById('URLGEPLANT').innerHTML = value.URLGEPLANT; 
      document.getElementById('URLGESAMT').innerHTML = value.URLGESAMT;  
     }); 

     $(data.anwesend).each(function(index,value) { 
      document.getElementById('anwesend').innerHTML = value; 
     }); 
    } 
}); 
+0

'anwesend'는 배열이 아닙니다. 왜 거기서'.each'를 사용하고 있습니까? – Shubham

+0

''anwesend '': "이름 1 # 이름 2 # 이름 3 # 이름 4 #"'- 왜 이걸 적절한 _array_로 시작하지 않습니까? (그래서 당신도 오류가 발생하는 것입니다. 왜냐하면 문자열 값을 "반복"하기 위해'each '를 사용하려고하기 때문입니다. 먼저'#'문자로 분리해야합니다. 배열은이 장소에서 더 이해 될 것입니다.) – CBroe

+0

가끔은 내 머리 속에 매듭이 있습니다. arry는 이제 그것을 바꿀 것입니다. – Andy

답변

0

"anwesend"의 마지막 값이 때문에 "이름 1 # 이름이 # 이름 3 # 이름 4 #" 문자열입니다.

하지만 유효하지 않은 해당 문자열을 통해 $ .each 방법을

$(data.anwesend).each(function(index,value) { 
      document.getElementById('anwesend').innerHTML = value; 
     }); 

을 적용했습니다. 그런 다음 'anwesend'을 통해 루프를 만들고 싶어

당신은 .each()의 인수가 배열 또는 CSS 선택기해야

{ 
    "status": 1, 
    "info": [{ 
     "URLREST": 0, 
     "URLGEPLANT": 0, 
     "URLGESAMT": 35 
    }], 
    "anwesend": ["Name 1","Name 2","Name 3","Name 4"] 
} 
1

API를 통해 배열을 보낼 필요하지만,하지 않은 당신은 $('Name 1#Name 2#Name 3#Name 4#').each(...이 배열 또는 올바른 CSS 선택기 사용 선택기가 jQuery를위한 유효

0

:

$('Name 1#Name 2#Name 3#Name 4#'); 

이 해시 태그로 끝나는 때문이다. 선택에 따라하는 것은 오류를 제공하지 : JQuery와 ID 선택 here에 대한

$('Name 1#Name 2#Name 3#Name 4#a'); 

더.

관련 문제