같은 기능으로 여기 저기에 몇 가지 이벤트 바인딩을 수행해야합니다. 가능한 한 코드를 간소화하려고 노력할 것입니다. jquery 프록시에 문제가있는 경우
이
내 이벤트는 구속력 :function submit_preset(e, url){
e.preventDefault();
var _formdata=new FormData(($(e)[0].target)); //don't mind this weird $(e)[0].target
$.ajax({
url:url,
data:_formdata,
type:'post',
success:function(datapass){
console.log(datapass);
}
});
}
내가 잘못을하고있는 중이 야 무엇 :
$(".preset").on("submit",$.proxy(submit_preset,this,"create"));
이 나는 그것이 annonymous $(".preset").on("submit",function(){ etc });
로하는 경우에 작동하는 기능은? 함수 매개 변수 또는 프록시 매개 변수? 또는 다른 것?
답 : 함수 내용에 뭔가 빠졌을 수는 있지만 문제점은 직감적이었습니다. 매개 변수를 교환해야했습니다. 답과 댓글에 대한 jsfiddle도 확인하십시오. 당신은 $.proxy
를 사용하여 form
에 submit_preset()
기능의 범위를 설정하는
당신은 바인딩 해당 이벤트 ('$ .proxy')이 함수'submit_preset'를 호출 할 수 있습니까? –
예, 함수에서 경고 ("테스트")를 시도했는데 양식을 제출하면 경고가 나타납니다. – Cr1xus