2012-03-07 2 views

답변

2

당신 MUST 또한 검증 방법에 따라 달라집니다이 통합 방법 양식이 ajaxifying 인이 멋진 jquery form plugin을 확인하십시오. 그것의 아름다움은 당신이 각 입력 필드에 javascript 스 니펫을 작성하는 것보다 선호하는 입력의 pattern 속성에 유효성을 넣으면 각 유효성 검사가 통과 될 때만 양식이 제출된다는 것입니다. 간단히 말해 제출 이벤트의 기본 동작이 변경되며 이번에는 ajax 인 경우를 제외하고는 REQUEST의 정확한 복제본을 갖게됩니다.

+1

가능하면 확장을 피하고 싶지만 솔직하게 말해서 멋지고 유혹적이긴하지만 유효성 검사를 다시해야한다는 뜻입니다. – Nick

3

예, 모든 양식 필드를 전달하여 제출 버튼을 하이잭하여 아약스 GET을 수행하고 false를 반환해야합니다.

+1

버튼은 그 중 일부만 처리합니다 ... 사용자가 "입력"을하면 어떻게됩니까? – charlietfl

+0

좋은 옵션입니다. – Nick

1
$('.mySubmitButton').bind('click', function(e) { 
    //do something else 
    return false; //stops form from submitting the normal way. 
}); 

또는

$('form#IDofForm').submit(function() { 
     //do something upon submit 
    }); 

또는 콤보 모두 당신이

1

를 원하는 경우 여기에 단지 성공을 제출시 양식 요소 자체를 대체 할 failry 간단한 방법입니다. 코드가 형성 이전 페이지로드에서 실행할 수 있도록 나는 아약스에로드되는() 메소드에 사용하고

$(document).on('submit', '#formID',function() { 
    var $form = $(this); 
    var dataToServer = $form.serialize(); 
    $.post(urlString, dataToServer, function(dataFromServer) { 
     /* run ajax sucess code here */ 

     $form.replaceWith(dataFromServer); 


    }); 
    return false; /* avoid browser submitting form*/ 

}); 

편집 : 당신은

+0

고마워요. 지금은 이것에 대해 살펴 봅니다. – Nick

관련 문제