我正在尝试修复其他人的代码,我在整个javascript中都有这样的行 -
var dataDiv = document.getElementById("ctl00_cpMain_tcMainTabs_tResBDetails_tcDetailTabs_tBDetail_bmrDetailDataDiv")
首选语法是什么?
仅供参考,这是一个支持jQuery的Web应用程序。
答案 0 :(得分:0)
我们过去常常使用但是当我们转移到MVC时变得多余的技巧就像这样,当你使用jquery时也更容易
var datadiv = '#<%= bmrDetailDataDiv.ClientID %>'
然后你可以使用jquery作为
来调用它$(datadiv)
或简化,如果您不需要在页面上的任何其他地方使用它
$('#<%= bmrDetailDataDiv.ClientID %>')
你可以使用匹配标识符,但我个人认为它不是那么优雅
$("div[id$='_bmrDetailDataDiv']");
答案 1 :(得分:0)
我出去了,并猜测这是一个ASP.NET应用程序?这看起来像是服务器端生成的客户端ID。
您可以尝试将其替换为:
var dataDiv = document.GetElementById("<%: [serverSideControlId].ClientID %>");
e.g。
var dataDiv = document.GetElementById("<%: Button1.ClientID %>");
或者,如果使用jQuery:
var dataDiv = $("#<%: Button1.ClientID %>")[0];