1
我無法在已創建的線程中找到答案。相當於在ASP.NET和jQuery中定位服務器控件
$("#<%=txtRating.ClientID%>").val("Set the value");
$(<%=txtRating.ClientID%>).val("Set the value");
?兩者都工作得很好,所以有什麼區別?謝謝。
我無法在已創建的線程中找到答案。相當於在ASP.NET和jQuery中定位服務器控件
$("#<%=txtRating.ClientID%>").val("Set the value");
$(<%=txtRating.ClientID%>).val("Set the value");
?兩者都工作得很好,所以有什麼區別?謝謝。
兩者都可以工作,因爲瀏覽器會自動爲每個標籤ID創建一個變量,以遵循HTML5標準。見http://2ality.com/2012/08/ids-are-global.html
您的代碼:
$(<%=txtRating.ClientID%>).val("Set the value");
$("#<%=txtRating.ClientID%>").val("Set the value2");
呈現此Javascript生成的HTML頁面:
$(txtRating).val("Set the value");
$("#txtRating").val("Set the value2");
的第一個作品,因爲:
的HTML5標準規定,窗口對象必須具有一個屬性鍵,如果只有一個DOM元素elem,其值爲elem屬性ID具有值鍵。
例如,假設此HTML:
<div id="foo"></div>
您可以通過使用id作爲變量獲取HTML標籤。因此$(foo)返回該標籤的jQuery對象。與$('#foo')相同,它也返回相同標記的jQuery對象。
> "foo" in window
true
> foo
<div id="foo"></div>
> $(foo)
Object [ <div#foo> ]
> $('#foo')
Object [ <div#foo> ]