제출 단추를 클릭하면 jquery에서 양식과 관련된 제출 이벤트를 사용하도록 아약스 호출이 이루어지기 때문에 이러한 상황이 발생합니다. 다음 코드를 사용하여 원하는대로 할 수 있습니다.
먼저 아래와 같이 폼에 ID를 추가
이제
<form action="" id="formId">
<input placeholder="Name" name="Name" class="form" id="name" type="text" required/>
<input placeholder="Mail" name="Mail" class="form" id="mail" type="email" required />
<input placeholder="Object" name="Object" class="form" id="oggetto" type="text" required />
<textarea placeholder="Message" name="Message" id="text" class="form"></textarea>
<input class="formBtn" name="submit" type="submit" id="submit"/>
<input class="formBtn" name="reset" type="reset" />
</form>
$(document).on('submit','#formId',function(e){
// this will prevent form to submit
e.preventDefault();
// data need to send can be get with javascript serialize()
var data = $("#formId").serialize();
// now go for ajax call
$.ajax({
type: "POST",
url: 'php/mail.php',
data: data,
success: function() {
alert("Mail inviata correttamente!");
}
});
})
[필수 필드가 아약스와 함께 작동하지 않습니다]의
가능한 복제 (http://stackoverflow.com jQuery 코드에 대한/questions/31876238/required-fields-are-not-working-with-ajax) –