2013-04-01 3 views
1

hudson에서 실행중인 일부 자바 스크립트 코드가 포함 된 html 페이지를 사용하기 위해 HTML 게시자를 사용하고 있습니다.String.format 함수가 아닙니다.

<html> 
    <head> 

      <!--Load the AJAX API--> 
      <script type="text/javascript" src="https://www.google.com/jsapi"></script> 
      <script type="text/javascript" src="http://code.jquery.com/jquery-1.7.1.min.js"></script> 
      <script type="text/javascript" src="../stringformat.js"></script> 
      <script type="text/javascript"> 

      ...... 

      sql=String.format("/.csv? select from table where exchange=`ABC......") 

      </script> 
    </head> 

그러나, 성공적으로 구축 한 후, 내 HTML 페이지가가 가정 무엇인지 표시되지 않습니다, 나는 오류 콘솔을 확인, 그것은

Error: TypeError: String.format is not a function 

을 말한다 : HTML 코드는 다음과 같이이다 HTML 게시자가 HTML 파일 이외의 파일을 포함 할 수 없기 때문에 stringformat.js를 최상위 폴더에 넣었습니다.

아무에게도 String.format이 제대로로드되지 않은 이유를 알 수 있습니까? 감사!

PS : stringformat.js 내가

http://www.masterdata.se/r/string_format_for_javascript/

이 코드 조각으로 올바르게 작동해야하는 코드는 허드슨 외부에서 작동

에서 가져온 파일입니다

+2

'../ stringformat.js'가로드 되었습니까? –

+0

그리고 stringformat.js는 무엇을합니까? 'String.prototype'에'format'을 추가하지 않으면 작동하지 않을 것입니다. – bfavaretto

+0

@Explosion Pills : 100 % 확신 할 수는 없지만 코드가 허드슨 외부에서 작동했습니다 – user1948847

답변

-1

try 코드 :

<html> 
<head> 
<title>String format javascript</title> 
<script type="text/javascript"> 
    String.format = function() { 
    var s = arguments[0]; 
    for (var i = 0; i < arguments.length - 1; i++) { 
    var reg = new RegExp("\\{" + i + "\\}", "gm"); 
    s = s.replace(reg, arguments[i + 1]); 
    } 
    return s; 
    } 
var _myString = String.format("hi {0}, i'am {1}","everybody", "stackoverflower"); 
function show(){ 
alert(_myString); 
} 
</script> 
</head> 
<body> 
<input type="button" name="btnTest" id="btnTest" value="Test string format" onclick="show();" /> 
</body> 
</html> 
관련 문제