前提・実現したいこと
値がない時に処理がスルー?されてしまう状態を解消したい。
formからの値を取得してそれに該当するjsonデータをresultsに格納しています。
この状態でformは全てradioボタンなのですが、全てチェックした場合は正常に表示されるのですが、
1つでもチェックがないresultsが空になってしまいます。
この場合にチェックがない状態でもうまく.filterを処理させたいです。
ブラグインはUnderscore.jsを使用しています。
該当のソースコード
js
1var value_type = $('[name=type]:checked').val(); 2var value_color = $('[name=color]:checked').val(); 3 4var results = _.chain(dataArray) 5 .filter(it => it.type === value_type) 6 .filter(it => it.color === value_color) 7 .value();
json
1{ 2 "test":[ 3 { 4 "name":"aaa", 5 "type":"1", 6 "color":"red" 7 }, 8 { 9 "name":"bbb", 10 "type":"1", 11 "color":"blue" 12 }, 13 { 14 "name":"ccc", 15 "type":"2", 16 "color":"blue" 17 },
試したこと
_.chain()内でif文が書ければと思ったのですが、エラーになりました。
js
1if (value_fee == '') { 2 null 3 } else { 4 var results = _.chain(dataArray).filter(it => it.fee === value_fee).value(); 5 var dataArray = results; 6 }
上記は同じ記述を何回も書くはめになるうえに、2個以上書くとエラーになりました。
ご教示宜しくお願いします。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/07/25 10:16
2018/07/25 10:21 編集
2018/07/25 10:27
2018/07/25 10:45
2018/07/25 10:49