質問: $('[name=size]').val(); if(val===''){ alert('選択をしてください'); return false; } }); ``` ### 試したこと formにrequiredは試したのですがsafariなど一部のブラウザで対応できませんでした。
回答: > > `$('[name=size]').val();` > > > このコードは、どちらのフォームがsubmitされたか関係なく、`[name=size]` にマッチする一つ目の要素の value を返します。 解決策としては、submitしたformの`[name=size]` にマッチするように変更すればおkです。 ``` $('form').submit(function(){ var val = $('[name=size]', this).val(); // 第2引数にthis(==submitされたform)を指定 if(val===''){ alert('選択をしてください'); return false; } }); ``` `$('[name=size]', this)` このコードは、submitされたの中から`[name=size]`にマッチする要素を探すことを意味します。