我有一个奇怪的问题。 我有一个简单的函数来打开一个弹出窗口,其中包含有关 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/