javascript中是否有关键字“capital”?
我正在调用一个名为“capital”的函数,但它不起作用,“capital”也起作用。 它是js中的关键字还是这是什么 这是代码,看看,测试一下javascript中是否有关键字“capital”?,javascript,jquery,Javascript,Jquery,我正在调用一个名为“capital”的函数,但它不起作用,“capital”也起作用。 它是js中的关键字还是这是什么 这是代码,看看,测试一下 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>HTML Select Element</title>
<script type="text/javascript">
function capita(){
alert('yes');
c = new Array("Islamabad", "Tehran", "Bejing", "New Delhi", "Kabul");
var i;
i = document.f1.country.selectedIndex;
document.f1.capital.value=c[i];
}
</script>
</head>
<body>
<h3>Countries and Capital</h3>
<form name="f1" method="post">
The capital of
<select name="country" id="country" onChange="capita();">
<option selected>Pakistan
<option>Iran
<option>China
<option>India
<option>Afghanistan
</select>
is <input type="text" name="capital" value="Islamabad"/>
</form>
</body>
</html>
不,资本不是一种财富。它既不在当前关键字列表中,也不在未来保留字列表中。甚至不是以前规范中更长的前一个列表
代码的问题在于,在某些浏览器中,所有名称值最终都是全局值。当然,在全局范围内声明的所有函数也是如此。因此,在这些浏览器上,函数capital和标记中名为capital的元素之间存在冲突。更改其中任何一个都可以解决问题。特别是Internet Explorer,有这个问题
一般来说,除非您正在编写库,否则根本不要向全局范围添加任何代码符号,在这种情况下,可以接受一个名为“唯一合理”的符号。例如,您的代码根本不需要任何全局代码符号:
HTML:
资本是对输入元素的引用
<input type="text" name="capital" value="Islamabad"/>
您将看到它提醒:
"[object HTMLInputElement]"
…或类似的东西
下面是一个更新的示例,它更改了内联处理程序,如下所示:
<select name="country" id="country" onChange="alert('LOCAL: ' + capital +
'\n\nGLOBAL: ' + window.capital);">
所以现在它提醒了capital和window.capital。如果在不同的浏览器中进行测试,可能会得到不同的结果
Chrome显示:
本地:[对象HTMLInputElement]
全局:函数资本{}
该函数在选择列表的事件OnChange上被调用。请向我们显示您的代码。@Bilal:您可以编辑您的问题以改进它。将代码发布到评论中是没有用的。我已经使用alert'success'进行了测试;在我的函数之上,它没有触发函数名为Capital的bt,一切都很好
<select name="country" id="country" onChange="alert(capital);">
"[object HTMLInputElement]"
<select name="country" id="country" onChange="alert('LOCAL: ' + capital +
'\n\nGLOBAL: ' + window.capital);">