2014-03-06 4 views
1

유닉스 타임 스탬프에 추가 된 영숫자 섹션이 추가 된 기본 식별자를 사용하고 있습니다.영숫자 식별자로 인해 문제가 발생합니다

최근까지 모든 것이 제대로 작동했습니다. 데이터베이스에서 몇 가지 식별자를 업데이트하지 못했습니다. 나는 수학자 인에서 멀리 모르지만, 원래의 느낌

96 + 1.386953039e으로 실패한 아이디의 모든 숫자와 전사되고있는 편지 E.

EG 1386953039E87을 가지고

내가 발견했습니다 값이 숫자로 취급됩니다. 나는 toString() 함수를 사용해 보았지만 이것은 나에게 도움이되지 못했다.

+0

주 코드() 대신 데이터)를 ATTR를 (사용해야 할 것 같다. – cgTag

답변

2

1386953039E87을 출력하면 숫자 (또는 자바 스크립트에서 가장 잘 추측되는 숫자)로 이미 생성되었으므로 toString을 호출하는 것이 너무 늦습니다.

숫자 대신 문자열로 생성되도록 서버 측 코드를 따옴표로 묶어 출력하도록 수정하십시오.

이것은 jQuery의 data() 함수를 사용하는 부작용 일 수도 있습니다. 그들은 그들의 값을 변경하지 않는 their api docs에서 언급하지만 귀하의 상황처럼 보인다 그렇지 증명 :

모든 시도가 (이 논리 값, 숫자, 객체를 포함하는 자바 스크립트 값 에 문자열로 변환되어

, 배열 및 null). 값 은 값의 표현을 변경하지 않는 경우에만 숫자로 변환됩니다. 예를 들어 "1E02"및 "100.000"은 숫자 (숫자 값 100)와 같지만 문자를 그대로 변환하기 위해 숫자를 변환하면 표현이 변경됩니다. 문자열 값은 "100"(시작 '{') 또는 어레이 다음 jQuery.parseJSON 파싱하는데 사용된다 ("["로 시작하는) 데이터 속성 객체가 숫자 100

변환 인 문자열. 따옴표 붙은 속성 이름을 포함하여 유효한 JSON 구문을 따라야합니다. 값이 JavaScript 값으로 해석 할 수없는 경우 문자열로 남습니다.

변환하려고 시도하지 않고 값의 속성을 문자열로 검색하려면 attr() 메소드를 사용하십시오.

그래서 당신이 문제를 보여주는이

+0

나는 id를 html 데이터 요소에 썼다. 그것은 jQuery를 통해 데이터 요소에서 꺼내어 페이지에 추가 할 때 상태를 변경하는 것으로 보입니다. – Sideshow

+0

코드의 해당 부분을 표시 할 수 있습니까? –

+0

id는 먼저 서버에 대한 ajax 요청 후 jquery를 통해 데이터 속성에 추가됩니다.이 경우 방화 켓 (firebug)을 선택하면 잘 렌더링됩니다. 그런 다음 데이터 속성에 액세스하여 페이지에 쓰고 다음과 같이 jquery를 사용하여 변수를 설정합니다. 'var job = $ (this) .data ('job_id '); $ ('. job_pc'). 텍스트 (job); var data = "job_id ="+ job;'도움이 될지 모르겠다. :) – Sideshow

관련 문제