为什么javascript有时会输出未定义的变量
我有一个小按钮,当按下它时,它会询问一个名字,然后将输入添加到URL中,然后由PHP处理。我的代码如下为什么javascript有时会输出未定义的变量,javascript,Javascript,我有一个小按钮,当按下它时,它会询问一个名字,然后将输入添加到URL中,然后由PHP处理。我的代码如下 function staff_prompt(url) { var url = url; var staffname=prompt("Please enter your Name below:","Staff Member Name"); if (staffname == null) { } else if (staffname == "Staff Membe
function staff_prompt(url)
{
var url = url;
var staffname=prompt("Please enter your Name below:","Staff Member Name");
if (staffname == null) {
}
else if (staffname == "Staff Member Name") {
alert('You must enter a value to continue');
staff_prompt();
}
else if (staffname == "") {
alert('You must enter a value to continue');
staff_prompt();
}
else {
var windowgo = url + "&staffmember=" + staffname;
window.location = windowgo;
}
}
我的按钮代码如下
onclick="staff_prompt('index.php?app=orders&page=action&action=go_orderedviewtype=<?php echo $viewtype ?>&orderid=<?php echo $orderid ?>')
onclick=“staff\u prompt('index.php?app=orders&page=action&action=go\u orderedviewtype=&orderid=”)
有时它工作得很好,但有时它似乎会http://undefined....ect"
我无法复制这种情况,有时会发生,有时不会
我在想,也许代码不是很好……为什么javascript有时检测不到变量“url”。此处url未定义。您正在使用未定义的参数调用函数:
staff_prompt();
因此,只要您进入else if-s,您就会得到未定义的url
将代码更改为
staff\u prompt(url);
就可以了。此处url未定义。您正在使用未定义的参数调用函数:
staff_prompt();
因此,只要您进入else if-s,您就会得到未定义的url
将代码更改为
staff\u prompt(url);
,您就没事了。是的,代码中有问题
您正在从两个else if条件调用
staff\u prompt()
函数&您没有将其中的url
作为参数传递,因此它肯定会将其视为未定义的是的,您的代码中存在问题
您正在从两个else if条件调用staff\u-prompt()
函数&您没有将其中的url
作为参数传递,因此当您在错误后调用staff\u-prompt时,它肯定会将其视为未定义的
function staff_prompt(url) {
var url = url;
var staffname=prompt("Please enter your Name below:","Staff Member Name");
if (staffname == null) {
} else if (staffname == "Staff Member Name") {
alert('You must enter a value to continue');
staff_prompt(url);
} else if (staffname == "") {
alert('You must enter a value to continue');
staff_prompt(url);
} else {
var windowgo = url + "&staffmember=" + staffname;
window.location = windowgo;
}
}
示例:当您在错误后调用staff\u提示符时,您不会传递url
function staff_prompt(url) {
var url = url;
var staffname=prompt("Please enter your Name below:","Staff Member Name");
if (staffname == null) {
} else if (staffname == "Staff Member Name") {
alert('You must enter a value to continue');
staff_prompt(url);
} else if (staffname == "") {
alert('You must enter a value to continue');
staff_prompt(url);
} else {
var windowgo = url + "&staffmember=" + staffname;
window.location = windowgo;
}
}
示例:使用qunit测试您的函数使用qunit测试您的函数谢谢-我想这就是为什么它只偶尔发生:)谢谢-我想这就是为什么它只偶尔发生:)