일부 입력이 필요한 양식이 있습니다. 모든 것은 복숭아입니다. 이 양식에서 jquery를 통해 입력 값을 가져 와서 숨겨진 값에 할당하려고합니다. 이렇게하려면 다음을 작성했습니다.jQuery를 사용하여 양식 제출시 preventDefault와의 재귀 문제
<script type="text/javascript">
jQuery(document).ready(function() {
function preventDefault(e){
e.preventDefault();
}
jQuery('#rsvp-form').bind('submit', preventDefault);
jQuery('#rsvp-form').submit(function(e) {
var emailvalue = jQuery('#personemail\\[0\\]').val();
jQuery('#person_email').val(emailvalue);
alert(jQuery("#person_email").val());
jQuery('#rsvp-form').unbind('submit', preventDefault);
jQuery(this).trigger('submit');
});
});
</script>
저는 바인딩 할 때 .preventDefault를 제출하면 내 값이 변경되지 않고 잘 제출됩니다. 문제는 값을 변경 한 후 양식을 제출하는 것입니다. 아무리 노력해도 무한 루프로 끝납니다. 내가 트리거 또는 .submit() 또는 그 라인을 따라 무언가를 제거하고 그냥 바인딩 해제와 함께 떠나면 아무 일도 일어나지 않습니다. 이 시점에서 종류의 난처한.
왜 처음부터 preventDefault가 필요합니까? – Yisroel
#person_email 필드가 숨겨져 있습니다. preventDefault는 제출을 중지하기 위해 필요하므로 양식의 다른 입력 (이 경우 personemail [0])에서 숨겨진 필드에 값을 할당 한 다음 양식을 제출하십시오. – Max