Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/404.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
奇怪的javascript函数参数值_Javascript - Fatal编程技术网

奇怪的javascript函数参数值

奇怪的javascript函数参数值,javascript,Javascript,我有以下JavaScript函数: function changeSelectedCustomerNumber(CustNumber){ var field = document.getElementById('SelectedNumber'); field.value = '00'+CustNumber; } 按以下选项可调用: <select style="width:100px;" name="bySubj"> <option onclick="

我有以下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函数时,单击该选项后, 编号为166263

我假设强制转换为num将删除前导零,但是如何将参数转换成这样呢


JavaScript为什么要这样做呢?

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


如果前导零是有效的,则应将变量作为字符串传递,即将其括在单引号中

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


如果前导零有效,则应将变量作为字符串传递,即用单引号将其括起来

元素是下拉列表DDL,但不是按钮或复选框。八进制的00510443是十进制的168227,而不是166263。我猜您已经选择了两个不同的示例并将它们合并了?@T.J.Crowder这就是我认为的太元素是一个下拉列表DDL,但不是按钮或复选框。八进制的00510443是十进制的168227,而不是166263。我猜你已经选择了两个不同的例子,并把它们混为一谈了?@T.J.Crowder我也这么想。。。或者使用.toString8.@VisioN,如果数值文本前面仍然有零,那么这将不会有帮助。他必须先去掉这些。提供一个他将如何传递的片段,然后使用基数10将字符串解析为数字可能会很有用。@Alnitak为什么不呢?它不允许在与00进行字符串连接时自动从八进制转换为十进制,即do 00+CustNumber.toString8。@jbabey我更关心的是,首先要确保将数字正确插入源代码中。。。。或者使用.toString8.@VisioN,如果数值文本前面仍然有零,那么这将不会有帮助。他必须先去掉这些。提供一个他将如何传递的片段,然后使用基数10将字符串解析为数字可能会很有用。@Alnitak为什么不呢?当使用00进行字符串连接时,它不允许从八进制自动转换为十进制,即do 00+CustNumber.toString8。@jbabey我更关心的是首先确保将数字正确插入源代码中。