JavaScript变量名称和HTML输入名称属性:名称空间冲突
JavaScript variable name and HTML input name attribute: namespace collision?
在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年,它仍然有效)。
相关文章:
- RegEx删除空属性?例如,如果(class=“”||class=“”)移除;否则就下课
- 全局变量和全局对象的属性之间有什么区别吗
- 如果使用 lodash 将属性存在于另一个对象中,则向对象添加属性
- 如何在Bootstrap Modal中为动态点击生成的变量设置jade属性
- 如何为HTML属性/选择器创建全局名称空间或变量
- 在html页面的属性周围添加了一个额外的空间
- 正在删除角度视图属性中的空间
- 如何为url属性中的空间设置%20
- Javascript对象/名称空间-如何访问从嵌套函数添加的属性(包括示例)
- 获取调用属于其属性或名称空间原型之一的函数的对象
- 使用 jQuery 读取命名空间属性
- JavaScript变量名称和HTML输入名称属性:名称空间冲突
- 如何查找属性在当前作用域中引用的命名空间
- XML节点:添加具有命名空间的属性
- 可以使用属性文件禁用插件用于某些汇流空间吗?
- D3不将名称空间属性附加到SVG元素
- 如何获取某个命名空间中节点的所有属性
- JS得到嵌套属性的对象与名称中的空间
- 命名空间和对象属性
- JavaScript名称空间模式(类似于对象的属性)