在一個HTML文件,我有以下幾點:JavaScript變量名和HTML輸入名稱屬性:namespace collision?
<input type="..." name="myInput1" />
在相應的JS文件我有以下變量模糊之後,將持有該輸入的字符串值:
var myInput1;
是否有任何有這兩個相同的名字的問題?我猜測命名空間是分開的,所以它沒問題。
在一個HTML文件,我有以下幾點:JavaScript變量名和HTML輸入名稱屬性:namespace collision?
<input type="..." name="myInput1" />
在相應的JS文件我有以下變量模糊之後,將持有該輸入的字符串值:
var myInput1;
是否有任何有這兩個相同的名字的問題?我猜測命名空間是分開的,所以它沒問題。
簡短的回答,沒有任何問題。
簡短的回答是,的確沒有。但是,它也很大程度上取決於你如何使用變量。讓我們考慮您使用JavaScript來驗證該變量的設置如下:
if(myInput1) {do something}
如果您還決定將ID設置爲相同的名稱如下(因爲你沒有指定,它可以是任何東西):
<input type="myInput1" name="myInput1" />
您的變量爲myInput1將被設置爲包含DOM元素,並不會是空的了。
JS和HTML之間的這種鏈接不僅有趣,而且可以用於創建一個利用,如Postcards from the post-XSS world的3.1.2節所述(這就是我的想法 - 即使這樣也可以工作,即使文章是從2011年)。