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

回答編集履歴

1

解決方法を改良!

2020/12/18 09:05

投稿

kanakana77
kanakana77

スコア1

answer CHANGED
@@ -46,4 +46,40 @@
46
46
  return paramsArray;
47
47
  };
48
48
  </script>
49
- ```
49
+ ```
50
+ ▼▼追記▼▼
51
+ ```html
52
+ <div class="itemgroup_sort">
53
+ <select name="itemsort-select" onChange="location.href=value;" id="itemsort-select">
54
+ <option value="{% category.url %}?sort=latest">新着順</option>
55
+ <option value="{% category.url %}?sort=priority">人気順</option>
56
+ <option value="{% category.url %}?sort=price_low">価格が安い順</option>
57
+ <option value="{% category.url %}?sort=price_high">価格が高い順</option>
58
+ </select>
59
+ </div>
60
+ <script>
61
+ var params = getParameter();
62
+ if (typeof params["sort"] === "string") {
63
+ $("#itemsort-select").val("{% category.url %}?sort=" + params["sort"]);
64
+ }
65
+
66
+ function getParameter(){
67
+ var paramsArray = [];
68
+ var url = location.href;
69
+ parameters = url.split("#");
70
+ if( parameters.length > 1 ) {
71
+ url = parameters[0];
72
+ }
73
+ parameters = url.split("?");
74
+ if( parameters.length > 1 ) {
75
+ var params = parameters[1].split("&amp;");
76
+ for ( i = 0; i < params.length; i++ ) {
77
+ var paramItem = params[i].split("=");
78
+ paramsArray[paramItem[0]] = paramItem[1];
79
+ }
80
+ }
81
+ return paramsArray;
82
+ };
83
+ </script>
84
+ ```
85
+ アドバイス頂いて、修正し、こちらでエラーが出ずに思った動きをするようになったので解決しました!