1

我有以下 JavaScript 函数:

function changeSelectedCustomerNumber(CustNumber){
    var field = document.getElementById('SelectedNumber');
    field.value = '00'+CustNumber;
}

通过按以下选项调用:

<select style="width:100px;" name="bySubj">
    <option onclick="changeSelectedCustomerNumber(00510443);">blatest</option>
</select>

我有几个这样的复选框。他们应该做的是将传递的数字放在单独的输入字段中。

我的问题是,在调试 JS 函数时,单击选项后, custnumber包含166263.

我假设强制转换为 num 会删除前导零,但是如何像这样转换参数。

JavaScript 有什么理由做这样的事情吗?

4

1 回答 1

7

由于前导零,您的数字被解析为八进制。

如果前导零很重要,您应该将变量作为字符串传递(即用单引号括起来)

于 2013-02-27T13:06:06.987 回答