Javascript js函数不改变值
我有以下代码。第一次调用函数时,iframe会将内容更改为newPage,但第二次调用函数时,页面不会更改Javascript js函数不改变值,javascript,iframe,Javascript,Iframe,我有以下代码。第一次调用函数时,iframe会将内容更改为newPage,但第二次调用函数时,页面不会更改 <!DOCTYPE html> <html> <head> <meta charset="ISO-8859-1"> <title>Submit</title> <script> var url = 1; function setURL(url){ var win1 =
<!DOCTYPE html>
<html>
<head>
<meta charset="ISO-8859-1">
<title>Submit</title>
<script>
var url = 1;
function setURL(url){
var win1 = "http://localhost/Audio/src/submit1.html" ;
var win2 = "http://localhost/Audio/src/newPage.html";
if (url === 1){
document.getElementById('iframe').src=win2;
url=2;
}
else{
document.getElementById('iframe').src=win1;
url=1;
}
}
</script>
</head>
<body>
<iframe src="http://localhost/Audio/src/audio.html" style="width:0;height:0;border:0; border:none;"></iframe>
<iframe id="iframe" style="border:0; " src="http://localhost/Audio/src/submit1.html">
</iframe>
<input type="button" value="click me 71" onclick="setURL(url)">
</body>
</html>
提交
var-url=1;
函数setURL(url){
变量win1=”http://localhost/Audio/src/submit1.html" ;
变量win2=”http://localhost/Audio/src/newPage.html";
如果(url==1){
document.getElementById('iframe').src=win2;
url=2;
}
否则{
document.getElementById('iframe').src=win1;
url=1;
}
}
由于传递的是与参数(url)相同的名称,因此必须明确说明要更改或更改参数名称(例如,从url更改为u)由于传递的是与参数(url)相同的名称,因此必须明确说明要更改或更改参数名称(例如,从url到u)您有两个变量称为url
一个定义为全局变量,另一个定义为函数参数
您的函数只更改定义为函数参数的参数,该参数不会保留在任何位置
如果要修改全局变量:不要在函数定义中定义参数(也不要麻烦将参数传递给函数)。有两个变量称为
url
一个定义为全局变量,另一个定义为函数参数
您的函数只更改定义为函数参数的参数,该参数不会保留在任何位置
如果要修改全局参数:不要在函数定义中定义参数(也不要麻烦将参数传递给函数).如果我没有在函数中定义参数,我如何更改函数中的全局变量?@DCR-其名称…@DCR-它没有。它有一个同名的函数参数屏蔽全局变量。我说过你必须删除它。如果我没有在函数中定义参数,我如何更改f中的全局变量function?@DCR-其名称…@DCR-它没有。它有一个同名的函数参数来屏蔽全局。我说过你必须删除它。我不明白。在函数内部如何更改全局变量?在这种情况下(因为url变量没有绑定到Window属性中)你必须将你的函数param重命名为不同的名称)我不明白。在函数内部如何更改全局变量?在这种情况下(因为url变量未绑定到Window属性中),必须将函数param重命名为其他名称)