JQuery 자동 생성을 사용하고 있으며 기본적으로 lat_id 및 lng_id 문자열은.JQuery autogeocomplete set 문자열 길이
도트 다음에 6 자리가 넘지 않도록 설정해야합니다. 예를 들어
:
Before:
-1.1501888001110125
After
-1.150188
이없는 경우 가능한 또는인가, 그것은 둥근 방법은 무엇입니까?
JQuery 자동 생성을 사용하고 있으며 기본적으로 lat_id 및 lng_id 문자열은.JQuery autogeocomplete set 문자열 길이
도트 다음에 6 자리가 넘지 않도록 설정해야합니다. 예를 들어
:
Before:
-1.1501888001110125
After
-1.150188
이없는 경우 가능한 또는인가, 그것은 둥근 방법은 무엇입니까?
이 시도 :
var mystring = "-1.1501888001110125";
var newstring = mystring.substr(0,(mystring.indexOf('.') + 7));
(그 7 인해를 더한 6 자 ".")
input
트리밍 :
$('#inputid').change(function() {
var $this = $(this);
var $thisval = $this.val();
if ($thisval.indexOf('.') > 0 && $thisval.length > 7) {
$this.val($thisval.substr(0, ($thisval.indexOf('.') + 7)));
}
});
이 솔루션의 유일한 나쁜 점은 번호를 잘라서 반올림하지 않는다는 것입니다. 1.50188899999999999가있는 경우 1.501888이 아닌 1.501889가됩니다. 일부 시나리오에서는 일부 시나리오에서는이를 원하지 않습니다. –
@ S.Visser는 OP 질문에 대한 코멘트를 봅니다. "반올림하지 않습니다"와 그 문자열이 숫자가 아니므로'substr'가 더 효과적입니다. – ManseUK
죄송합니다. 의견을 보지 못했습니다. "이게 가능한가, 아니면 그렇지 않은가?"라는 그의 글에서 이것을 보았다. 그러나 그 옆에있는 검색을 통해 사람들에게 알리는 것이 좋습니다. Btw는 코드가 잘못되었다고 말할 수있는 방법이 아니 었습니다.) –
function roundNumber(num, dec) {
var result = Math.round(num*Math.pow(10,dec))/Math.pow(10,dec);
return result;
}
alert(roundNumber(-1.32423423421421312, 6))
그 -1.150189 안? 또는 반올림을 원하지 않으십니까?지도상의 마커가 움직일 것입니다 (정확하지는 않음). – ManseUK
아니요, 반올림하지 않으십시오. 단지 포인트를 남기고 여분의 숫자를 없애고 싶습니다. – Satch3000