teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

2

実現方法を記載

2020/07/27 02:05

投稿

ryu_k
ryu_k

スコア19

title CHANGED
File without changes
body CHANGED
@@ -55,4 +55,27 @@
55
55
 
56
56
 
57
57
 
58
- よろしくお願いいたします。
58
+ よろしくお願いいたします。
59
+
60
+
61
+
62
+ ##### 実現できました。
63
+ ```JavaScript
64
+ $('.aaaaa').on("keydown", function (e) {
65
+ if (e.keyCode === 40) {
66
+ //-----下-----
67
+ //今フォーカスがあたっている行を取得
68
+ let $row = $(this).closest("tr");
69
+ var colIndex = $(this).parent().index();
70
+
71
+ //次の行を取得
72
+ let $row_next = $row.next("tr");
73
+ if ($row_next.length) {
74
+ //次の行のフォーカスにセット
75
+ $row_next.find("td").eq(colIndex).find("input").focus();
76
+ }
77
+ } else if (e.keyCode === 38) {
78
+ //-----上-----
79
+ }
80
+ });
81
+ ```

1

実装イメージを記載

2020/07/27 02:05

投稿

ryu_k
ryu_k

スコア19

title CHANGED
File without changes
body CHANGED
@@ -32,4 +32,27 @@
32
32
 
33
33
  最初はid、nameを指定して一生懸命書いていたのですが、何か効率の良い方法はありませんでしょうか。
34
34
 
35
+ ##### やってみたいこと
36
+ ```JavaScript
37
+ $('.aaaaa').on("keydown", function (e) {
38
+ if (e.keyCode === 40) {
39
+ //-----下-----
40
+ //今フォーカスがあたっている行を取得
41
+ let $row = $(this).closest("tr");
42
+ //次の行を取得
43
+ let $row_next = $row.next("tr");
44
+ if ($row_next.length) {
45
+ //次の行がある場合
46
+ //★ここで、フォーカスがいる列番号(<td>)を取得し、そこにいるtextにフォーカスをあてたい
47
+ //★その実装方法のイメージがつかずに困っております・・・
48
+ }
49
+ } else if (e.keyCode === 38) {
50
+ //-----上-----
51
+ }
52
+ });
53
+ ```
54
+
55
+
56
+
57
+
35
58
  よろしくお願いいたします。