回答編集履歴

1

追記

2018/12/12 04:53

投稿

退会済みユーザー
test CHANGED
@@ -31,3 +31,85 @@
31
31
 
32
32
 
33
33
  問題は id の取得ですが、MVC4 以降には Html ヘルパーに IdFor メソッドが用意されていて、それを使えば可能だと思います。
34
+
35
+
36
+
37
+ **【追伸】**
38
+
39
+
40
+
41
+ 迷走しそうな雰囲気なので、そうならないようサンプルを書いておきます。
42
+
43
+
44
+
45
+ Html ヘルパー IdFor を使ってテキストボックス ```<input type="text" id="xxxxx" ... />``` の id 属性の値 xxxxx を取得し、当該テキスト value 属性の値を書き換えるサンプルを書いておきます。
46
+
47
+
48
+
49
+ View のコードにだけ以下のように手を加えれば OK です。
50
+
51
+
52
+
53
+ 以下の @model... と IdFor メソッドの引数は、前のスレッドの私のサンプルの Model ベースです。そこは質門者さんのケースに合わせて書き換える必要があります。(IdFor の引数は当該テキストボックスの EditorFor の第 1 引数と同じで良いと思います)
54
+
55
+
56
+
57
+ ```
58
+
59
+ @model Mvc5App.Models.KintaiModel
60
+
61
+
62
+
63
+ ・・・中略・・・
64
+
65
+
66
+
67
+ <button type="button"
68
+
69
+ onclick="setRegularWorkTime('@Html.IdFor(model => model.Kintais[i].Open)', '@Html.IdFor(model => model.Kintais[i].Close)')"
70
+
71
+ class="btn btn-primary">
72
+
73
+ 定時
74
+
75
+ </button>
76
+
77
+
78
+
79
+ ・・・中略・・・
80
+
81
+
82
+
83
+ @section Scripts {
84
+
85
+ @Scripts.Render("~/bundles/jqueryval")
86
+
87
+
88
+
89
+ <script type="text/javascript">
90
+
91
+ //<![CDATA[
92
+
93
+ function setRegularWorkTime(from, to) {
94
+
95
+ document.getElementById(from).value = "9:00";
96
+
97
+ document.getElementById(to).value = "18:00";
98
+
99
+ }
100
+
101
+ //]]>
102
+
103
+ </script>
104
+
105
+ }
106
+
107
+ ```
108
+
109
+
110
+
111
+ 上の JavaScript のコードにより、以下の画像の赤枠で囲った部分が示すように、[定時]ボタンクリックで open, close テキストボックスの値が 9:00, 18:00 に書き換えられています。
112
+
113
+
114
+
115
+ ![イメージ説明](bfd468e39fb3768cbd72cc3dd20d4b17.jpeg)