input labelボタンをクリックするとイベントがトリガーされます

5412 ワード


週を選択できるチェックボックスを作りました.
                
                  <input
                    type="checkbox"
                    id="dayChoice1"
                    name="daysInput"
                    value="1"
                    onClick={dayOnClick}
                  ></input>
                <div className="dayLabelDiv">
                  <label htmlFor="dayChoice1"></label>
                </div>
(表示:none)
しかし、問題は、そのブロックボタンをクリックしたときに選択されるのではなく、テキストを正確にクリックして選択されることです.
解決策は簡単だ.
divでlabelを包まないで、labelでdivを包んでください.
               <input
                 type="checkbox"
                 id="dayChoice1"
                 name="daysInput"
                 value="1"
                 onClick={dayOnClick}
               ></input>
               <label htmlFor="dayChoice1">
                 <div className="dayLabelDiv"></div>
               </label>