반응형
React.js에서 onSubmit 설정
양식을 제출할 doSomething()
때 기본 게시 동작 대신 시도하고 있습니다.
분명히 React에서 onSubmit은 양식에 대해 지원되는 이벤트입니다. 그러나 다음 코드를 시도하면 :
var OnSubmitTest = React.createClass({
render: function() {
doSomething = function(){
alert('it works!');
}
return <form onSubmit={doSomething}>
<button>Click me</button>
</form>;
}
});
메서드 doSomething()
가 실행되지만 이후에도 기본 게시 동작이 수행됩니다.
내 jsfiddle 에서 이것을 테스트 할 수 있습니다 .
내 질문 : 기본 게시 동작을 어떻게 방지합니까?
당신의에서 doSomething()
기능, 이벤트 전달 e
및 사용 e.preventDefault()
.
doSomething = function (e) {
alert('it works!');
e.preventDefault();
}
또한 이벤트 처리기를 렌더링 외부로 이동하는 것이 좋습니다.
var OnSubmitTest = React.createClass({
submit: function(e){
e.preventDefault();
alert('it works!');
}
render: function() {
return (
<form onSubmit={this.submit}>
<button>Click me</button>
</form>
);
}
});
<form onSubmit={(e) => {this.doSomething(); e.preventDefault();}}></form>
그것은 나를 위해 잘 작동합니다
이벤트를 함수에 인수로 전달한 다음 기본 동작을 방지 할 수 있습니다.
var OnSubmitTest = React.createClass({
render: function() {
doSomething = function(event){
event.preventDefault();
alert('it works!');
}
return <form onSubmit={this.doSomething}>
<button>Click me</button>
</form>;
}
});
참고URL : https://stackoverflow.com/questions/28479239/setting-onsubmit-in-react-js
반응형
'Programing' 카테고리의 다른 글
zsh에서 $ PATH 변수 어설 션을 어디에 배치합니까? (0) | 2020.09.09 |
---|---|
새 파일을 포함하려면 'git add --patch'? (0) | 2020.09.09 |
가장 일반적인 Mercurial 명령에 해당하는 Git? (0) | 2020.09.09 |
querySelectorAll을 사용하여 직계 자식 검색 (0) | 2020.09.09 |
Vim에서 인코딩 및 파일 인코딩을 utf-8로 설정 (0) | 2020.09.09 |