브라우저 (Google 크롬, FF, IE & 오페라 모두 최신 버전 임)가있는 경우 HTML 사양에 아무것도 표시되지 않았습니다. 잘못된 유형의 입력에 onclick 처리기가 있습니다. 전문가 :크롬, FF, IE 및 오페라의 입력에 이상한 동작이 입력되었습니다.
다음 html을 사용하고 브라우저에서 개발자 콘솔 로그에 오류가 발생했다고 상상해보십시오. 하지만 그것은 단지 전체 페이지를 다시로드합니다!
<!DOCTYPE html>
<html>
<body>
<form class="form-inline">
<button type="button color" onclick="document.getElementById('magic').innerHTML='clicked broken button'">Broken Button</button>
<button type="button" onclick="document.getElementById('magic').innerHTML='clicked button'" >Button</button>
</form>
<p id="magic"></p>
</body>
</html>
보시다시피 첫 번째 버튼은 잘못된 유형이며 두 번째 버튼은 올바른 유형입니다. 두 버튼 모두 거의 동일한 onclick 핸들러를 가지고 있지만 단 한 가지 차이점은 변경된 단락의 텍스트뿐입니다.
첫 번째 단추를 클릭하면 단락의 텍스트가 변경되고 전체 페이지가 다시로드되므로 결과가 빈 단락이됩니다. 두 번째 버튼을 클릭하면 모든 것이 예상대로 작동하고 단락의 텍스트가 변경되어 다시로드되지 않습니다.
그래서 모든 4 개의 주요 브라우저에서 전체 페이지를 다시로드하는 것이 기본 동작인지 말해 줄 수 있습니까? 브라우저가 누락 된 버튼에 대한 힌트를 만들어서는 안됩니다 (개발자 콘솔 로그에 오류 메시지를 인쇄하는 등). 나에게 이것은 매우 혼란 :(그들이 <form>
내부이기 때문에
답변 해 주셔서 감사합니다! 나는 이것이 어떤 명세로 기록 되었으면 좋겠다 ... 잘못된 버튼은 나만 쓰여진 것이 아니므로, 브라우저가 다시로드되는 이유를 알아 내는데 몇 시간이 걸렸다. – Jonas