php - JavaScript 问题 - 未将前导 '0' 的字符串传递到正确的字符串

标签 php javascript string

我有一个奇怪的问题。 我有一个简单的函数来打开一个弹出窗口,其中包含有关 PIN 码的信息(通过单击包含该 PIN 码的链接)

它对于某些引脚工作正常,但会将其他引脚转换为不同的数字。

例如传递“033604”打开 http://mysite.com/pincheck.php?pin=014212

但传递“023960” 打开 http://mysite.com/pincheck.php?pin=023960 (我需要什么)

传递“032765”打开 http://mysite.com/pincheck.php?pin=013813

但传递“030309” 打开 http://mysite.com/pincheck.php?pin=030309 (我需要什么)

我已经尝试了一堆引脚,它们都是随机的 - 要么传递正确的引脚,要么将其转换为不同的数字

函数是

function win_open_pin(pin) {
newwindow = window.open('pincheck.php?pin=' + '0' + pin + '' , 'popupwin', 'menubar=no,history=no,resizable=yes,scrollbars=yes,toolbar=no,width=650,height=300');
if (window.focus) {newwindow.focus()}
}

我确实尝试过使用 pincheck.php?pin=0' + pin 并在函数中尝试过 pin = toString(pin) - 没有用

调用也很简单

<a href=\"javascript:win_open_pin($pin)\">$pin</a> 

php 中的 $pin 变量是从数据库中获取的,是一个字符串,我什至进行了(字符串)转换以防万一。 这似乎是 js 问题,因为我从来没有遇到过与 php 类似的问题。

我看不出这有任何押韵或理由。希望有人能指出我正确的方向来解决这个问题。 谢谢。

最佳答案

我认为这是自动 int 转换的问题。 例如:

parseInt("033604", 10) //returns 33604

parseInt("033604") //returns 14212 - Octal

将 anchor 元素标记更改为以下内容(注意 $pin 周围的单引号):

<a href=\"javascript:win_open_pin('$pin')\">$pin</a>

关于php - JavaScript 问题 - 未将前导 '0' 的字符串传递到正确的字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5734976/

相关文章:

php - Symfony 2.3.5 fatal error : Class 'ResourceBundle' not found on Server

php - 服务器时间和mysql数据库时间戳之间的秒数差异

javascript - 为什么 2..toString() 有效?

javascript - 欧芹 - 根据 li 的值隐藏/显示 block

javascript - 将 props 传递给 React 组件的最简洁方法?

c# - 通过 [] 运算符访问字符串中的 char 是更快还是通过 [] 运算符访问 char[] 中的 char 更快?

php - 怎么算没有。 mysql 中一列中的确切关键字出现次数

mysql:拆分列中的字符串、计数、连接字符串

php - 如何计算数据被访问的次数?

php - 如何将对象和/或多维数组从 Javascript 传递到 PHP