-4

私は他の誰かのコードを修正しようとしています.JavaScript全体にこのような行があります-

var dataDiv = document.getElementById("ctl00_cpMain_tcMainTabs_tResBDetails_tcDetailTabs_tBDetail_bmrDetailDataDiv")

推奨される構文は何ですか?

参考までに、これは jQuery 対応の Web アプリケーションです。

4

2 に答える 2

0

以前は使用していたが、MVCに移行したときに冗長になったトリックは、このようなもので、jqueryを使用すると簡単になりました。

var datadiv = '#<%= bmrDetailDataDiv.ClientID %>'

次に、jqueryを使用してそれを呼び出すことができます

$(datadiv)

または、ページの他の場所で使用する必要がない場合は簡略化されます

$('#<%= bmrDetailDataDiv.ClientID %>')

一致識別子を使用することもできますが、個人的にはそれほどエレガントではないと思います

$("div[id$='_bmrDetailDataDiv']");
于 2012-07-23T13:38:06.323 に答える
0

これは ASP.NET アプリケーションだと思いますか? これは、サーバー側で生成されたクライアント ID のようです。

次のようなものに置き換えてみてください。

var dataDiv = document.GetElementById("<%: [serverSideControlId].ClientID %>");

例えば

var dataDiv = document.GetElementById("<%: Button1.ClientID %>");

または、jQuery を使用している場合:

var dataDiv = $("#<%: Button1.ClientID %>")[0];
于 2012-07-23T13:39:28.540 に答える