回答編集履歴
1
追記
test
CHANGED
@@ -17,3 +17,55 @@
|
|
17
17
|
|
18
18
|
|
19
19
|
ASP.NET MVC では、MVC4 以降であれば Html ヘルパーに IdFor メソッドが用意されていて、それを利用することができます。その説明も上に紹介した記事にあります。
|
20
|
+
|
21
|
+
|
22
|
+
|
23
|
+
**【追記】**
|
24
|
+
|
25
|
+
|
26
|
+
|
27
|
+
「質問内容」に直接答えてなかったので追記します。
|
28
|
+
|
29
|
+
|
30
|
+
|
31
|
+
> 一般的なチーム(企業)開発として、IDがAutoIDになってしまう対策を知りたい。(Staticにすると衝突が起きるので、Inheritが普通?)
|
32
|
+
|
33
|
+
|
34
|
+
|
35
|
+
デフォルトでは「IDがAutoIDになってしまう」と言うことはないはずです。
|
36
|
+
|
37
|
+
|
38
|
+
|
39
|
+
ASP.NET サイトの記事 ASP.NET 4 Breaking Changes / ClientIDMode Changes (URL 下記) にあるように、ASP.NET 4 からは ClientID の命名がデフォルトで Predictable となってます。
|
40
|
+
|
41
|
+
|
42
|
+
|
43
|
+
ASP.NET 4 Breaking Changes / ClientIDMode Changes
|
44
|
+
|
45
|
+
[https://docs.microsoft.com/en-us/aspnet/whitepapers/aspnet4/breaking-changes#0.1__Toc256770142](https://docs.microsoft.com/en-us/aspnet/whitepapers/aspnet4/breaking-changes#0.1__Toc256770142)
|
46
|
+
|
47
|
+
|
48
|
+
|
49
|
+
正確に言うと、コントロールの ClientIDMode はデフォルトで Inherit だが、ページの ClientIDMode はデフォルトで Predictable なので、それを継承して結果的に Predictable になるということです。
|
50
|
+
|
51
|
+
|
52
|
+
|
53
|
+
特に理由がなければデフォルトで問題ないと思います。問題があるとすると以下のようなケースです。
|
54
|
+
|
55
|
+
|
56
|
+
|
57
|
+
UpdatePanel と ListView
|
58
|
+
|
59
|
+
[http://surferonwww.info/BlogEngine/post/2016/11/20/linkbutton-in-listview-in-updatepanel.aspx](http://surferonwww.info/BlogEngine/post/2016/11/20/linkbutton-in-listview-in-updatepanel.aspx)
|
60
|
+
|
61
|
+
|
62
|
+
|
63
|
+
> NAMEを固定する方法を知りたい。(ClientID Modeがあるのに、NAMEを固定するモードがない?)
|
64
|
+
|
65
|
+
|
66
|
+
|
67
|
+
name は固定できません。裏技的に変える方法があるかもしれませんが、ASP.NET が name を UniqueID に設定し、サーバー側でそれを使って操作することがあるので、変えるといろいろ支障が出るはずです。
|
68
|
+
|
69
|
+
|
70
|
+
|
71
|
+
クライアントスクリプトで jQuery オブジェクトを取得したいのなら id を使ってください。
|