表題の件でご相談です。
セレクトボックスで選択された、○月○日の部分を文字列を取得して、
選択した時にyyyymmddの形式で下のテキストボックスに表示させたいと考えています。
正規表現などを用いて文字列として表示する所まではできたのですが、1月11日を入力した時に「2017111」となっており、1月が01ではなく「1」と表示されてしまうので、1月11日と11月1日が同じ形で表示されてしまいます。
1月11日は、
20170111
11月1日は、
20171101
と表示させたいと考えております。
Dateオブジェクトの利用や正規表現について色々ググってみたのですが、
なかなかあてはまるものが無く、お知恵をお借りできますと幸いです。
HTML
1 <select name="e_1973" id="e_1973"> <option value="" selected="selected">選択してください</option> 2 <option value="200">1月2日(土)11:00~<個別指導コース希望者向け説明会></option> 3 <option value="202">12月1日(日)14:00~<受験対策コース希望者向け説明会></option> 4 <option value="203">1月12日(水)19:30~<受験対策コース希望者向け説明会></option> 5 <option value="204">11月1日(土)11:00~<個別指導コース希望者向け説明会></option> 6 <option value="206">1月11日(日)14:00~<個別指導コース希望者向け説明会></option> 7 <option value="113">web説明会を希望 (全日コース希望)</option> 8 </select> 9<br> 10<br> 11<br> 12 <input type="text" name="" value="" id="date">
javascript
1 2$("#e_1973").on('change',function () { 3 var selectVal = $("#e_1973 option:selected").text(); 4 var selectVal2 = "2017年"+selectVal; 5 var ResString = selectVal2.replace( /(\d+)年(\d+)月(\d+)日/g , "$1$2$3" ); 6 console.log(ResString); 7 ResString3 = ResString.substring(0,ResString.indexOf("(")); 8 console.log(ResString3); 9 $('#date').val(ResString3); 10}); 11
どうぞよろしくお願いします。
回答3件
あなたの回答
tips
プレビュー