我正在使用HTML发布商希望有一个html页面,其中包含一些在hudson上运行的javascript代码。 HTML代码是这样的:
<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
我已将我的stringformat.js放入顶级文件夹,因为HTML发布者似乎不允许该文件包含HTML文件以外的任何内容。
有谁能告诉我为什么String.format没有正确加载?谢谢!
PS:stringformat.js是我从
获得的文件http://www.masterdata.se/r/string_format_for_javascript/
代码应该正常工作,因为这段代码在hudson
之外工作答案 0 :(得分:-1)
尝试代码:
<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>