htmlで値段フォームの表示非表示をradioボタンの切り替えにより行いたいのですが
create:62 Uncaught ReferenceError: priceSwitch is not defined at HTMLInputElement.onclick
というエラーが出ます。
Laravelでjsファイルはlaravel mixしてあり、viewの継承元ファイルにはbodyタグの閉じタグの前に
</div> <script src="{{ mix('js/article.js') }}"></script> </body>
と記述してあります。
他のコードは以下のようになっています。
create.blade.php
<input type="radio" class="radioFee" name="is_fee" value="0" onclick="priceSwitch();" checked> 無料 </label> <label> <input type="radio" class="radioFee" name="is_fee" value="1" onclick="priceSwitch();"> 有料 </label> <span id="pricing-form"> <label>¥<input type="tel" minlength="3" name="price"></input> JPY</label> <button type=submit>追加</button>
article.js
function priceSwitch() { const formBox = document.getElementById('pricing-form'); const radioFee = document.getElementsByClassName('radioFee'); radioFee[0].addEventListener('change', function (){ formBox.style.display = "none"; }); radioFee[1].addEventListener('change', function (){ formBox.style.display = "block"; }); }
何が原因で出ているのでしょうか...?