2012-04-18 2 views
0

두 가지 유형의 버튼과 같은 함수를 호출합니다. 처음에는 완벽하게 작동하지만 버튼을 사용하면 처음에는 잘 작동하지만 1 초 이내에 페이지를 새로 고치는 것처럼 보입니다.input type = "button"을 사용할 때 함수는 잘 작동하지만 버튼을 사용할 때는

<input type="button" id="bProv" value="filtrar" onclick="filtroP()"/> 
<button id="bProv" onclick="filtroP()">filtrar</button> 
+0

콘솔의 내용은 무엇입니까? – Joseph

+1

@Joseph - JS가 실행되면 페이지가 다시로드되기 때문에 아무 것도 없습니다. JS 컨트롤은 정규 양식 제출을 통해 페이지를 떠나는 브라우저에 대해보고하지 않습니다. – Quentin

답변

3

submit<button> 요소 기본값 type, 그래서 그것은 JS를 실행 한 다음 즉시 양식을 제출합니다.

양식 제출을 원하지 않으면 <button type="button" ...을 사용하십시오.

즉, 단추를 하드 코딩하면 (JS 없이는 아무 것도 수행하지 않음) unobtrusive JavaScript (WWW의 모범 사례 프로그래밍의 일부 임) 원칙에 위배됩니다.

관련 문제