回答編集履歴

4

構文を全面的に修正

2020/05/26 13:18

投稿

miyabi_pudding
miyabi_pudding

スコア9555

test CHANGED
@@ -18,11 +18,11 @@
18
18
 
19
19
  <ul id="price">
20
20
 
21
-  <li class="even"><label><input type="hidden" class="btn" name="price" value="300" onclick="price(this)">300円</label></li>
21
+  <li class="even"><label onclick="price(this)"><input type="hidden" class="btn" name="price" value="300">300円</label></li>
22
22
 
23
-  <li class="odd"><label><input type="hidden" class="btn" name="price" value="600" onclick="price(this)">600円</label></li>
23
+  <li class="odd"><label onclick="price(this)"><input type="hidden" class="btn" name="price" value="600">600円</label></li>
24
24
 
25
-  <li class="odd"><label><input type="hidden" class="btn" name="price" value="1200" onclick="price(this)">1200円</label></li>
25
+  <li class="odd"><label onclick="price(this)"><input type="hidden" class="btn" name="price" value="1200">1200円</label></li>
26
26
 
27
27
  </ul>
28
28
 
@@ -34,10 +34,10 @@
34
34
 
35
35
  function price(inputDom) {
36
36
 
37
- var out_price = $(inputDom).val();
37
+ var out_price = $(inputDom).children('input').val();
38
38
 
39
39
  console.log(out_price); // "?"が文末は文法違反";"が正しい undefined
40
40
 
41
- };
41
+ }
42
42
 
43
43
  ```

3

閉じタグを修正

2020/05/26 13:18

投稿

miyabi_pudding
miyabi_pudding

スコア9555

test CHANGED
@@ -18,7 +18,7 @@
18
18
 
19
19
  <ul id="price">
20
20
 
21
-  <li class="even"><label><input type="hidden" class="btn" name="price" value="300" onclick="price(this)">300円</a></li>
21
+  <li class="even"><label><input type="hidden" class="btn" name="price" value="300" onclick="price(this)">300円</label></li>
22
22
 
23
23
   <li class="odd"><label><input type="hidden" class="btn" name="price" value="600" onclick="price(this)">600円</label></li>
24
24
 

2

a要素ではなく、inputに変更

2020/05/26 13:04

投稿

miyabi_pudding
miyabi_pudding

スコア9555

test CHANGED
@@ -3,6 +3,8 @@
3
3
  (`price li`では、`li`の集まりというか、ID指定のセレクタになってないため、そもそも要素を取得できていない)
4
4
 
5
5
  `val`メソッドを持っていないからです。
6
+
7
+ また、だいたいにおいて、`a`要素は、`value`属性を持たないので、動きません。
6
8
 
7
9
 
8
10
 
@@ -16,11 +18,11 @@
16
18
 
17
19
  <ul id="price">
18
20
 
19
-  <li class="even"><a class="btn" href="#02" name="price" value="300" onclick="price(this)">300円</a></li>
21
+  <li class="even"><label><input type="hidden" class="btn" name="price" value="300" onclick="price(this)">300円</a></li>
20
22
 
21
-  <li class="odd"><a class="btn" href="#02" name="price" value="600" onclick="price(this)">600円</a></li>
23
+  <li class="odd"><label><input type="hidden" class="btn" name="price" value="600" onclick="price(this)">600円</label></li>
22
24
 
23
-  <li class="odd"><a class="btn" href="#02" name="price" value="1200" onclick="price(this)">1200円</a></li>
25
+  <li class="odd"><label><input type="hidden" class="btn" name="price" value="1200" onclick="price(this)">1200円</label></li>
24
26
 
25
27
  </ul>
26
28
 

1

console.logの文末の間違いを修正

2020/05/26 13:03

投稿

miyabi_pudding
miyabi_pudding

スコア9555

test CHANGED
@@ -34,7 +34,7 @@
34
34
 
35
35
  var out_price = $(inputDom).val();
36
36
 
37
- console.log(out_price)? //undefined
37
+ console.log(out_price); // "?"が文末は文法違反";"が正しい undefined
38
38
 
39
39
  };
40
40