在 HTML 文件中,我有以下内容:
<input type="..." name="myInput1" />
在相应的 JS 文件中,我有以下变量,它将在模糊后保存该输入的字符串值:
var myInput1;
这两个相同的名字有什么问题吗?我猜命名空间是分开的,所以没关系。
在 HTML 文件中,我有以下内容:
<input type="..." name="myInput1" />
在相应的 JS 文件中,我有以下变量,它将在模糊后保存该输入的字符串值:
var myInput1;
这两个相同的名字有什么问题吗?我猜命名空间是分开的,所以没关系。
简短的回答,没有任何问题。
一个简短的回答是,确实,不。但是,这也很大程度上取决于您如何使用该变量。假设您使用 javascript 来验证变量是否设置如下:
if(myInput1) {do something}
如果您还决定将 id 设置为与名称相同,如下所示(因为您没有指定,它可以是任何东西):
<input type="myInput1" name="myInput1" />
您的变量 myInput1 将被设置为包含 DOM 元素并且不再为空。
JS 和 HTML 之间的这种链接不仅很有趣,而且可以用来创建一个漏洞利用,如后 XSS 世界的明信片第 3.1.2 节中所述(这就是我的想法所在 - 是的,它甚至仍然有效虽然这篇文章来自 2011 年)。