String.format不是函数

时间:2013-04-01 18:47:32

标签: javascript html jenkins hudson jenkins-plugins

我正在使用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

之外工作

1 个答案:

答案 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>