2011-09-12 3 views
0

jquery를 이해하려고합니다. 약간 천천히, 아마도 COBOL 배경에서 왔을 수도 있습니다..load()를 사용하여 다이얼로그에 PHP/HTML 폼을로드하는 방법

나는 읽는 것 대신에 내가하는 것처럼 배운다. PHP, jquery는 나를위한 취미 일뿐입니다.

나는이 업데이트 양식 페이지를 가지고있었습니다. 대화에 넣으려고했습니다.

I 프레임과 함께 Dialog를 사용하려고했는데, 싫어했습니다. iframe이로드되는 데 시간이 너무 많이 걸렸습니다.로드되는 페이지 중 jquery 탭이 포함되어로드 속도가 느려졌습니다. 그리고 몇 가지 다른 문제들.

그래서 iframe에서 벗어나려고합니다. 나는 페이지를 벗겨 내고 육체 (내 php/html 파일의 바디) (바디 태그 빼기)를 지켰으니, 이제는 대화 상자에 내 양식의 짧은 버전을로드합니다. 그러면 아름답게로드되고 잘 보입니다. 내가 잃어버린 조금 ....

가 나는 Ajax를 사용해야 할 guesting하지만, OK/실패 메시지와 함께 아약스로부터 반환에하고 나는 내가 어디에 제출 싶어 그래서 다음

내 데이터를,이는 I 다시 길을 잃었다.

내 제출 버튼은 jquery 대화 버튼이 아니 었습니까?

{ 
    "Save" : function() { 
      ..... 
    "Close" : function() { 
      $(this).dialog("close"); 
      ..... 
}  

이 못생긴 나는 더 적은을 배치 할 위치에 대한 제어 방법과 모양을 가지고 :

나는 버튼을 사용합니다.

답변

0

대화 상자에 양식이 있는지 확인하기 만하면됩니다. , 양식에 리스너를 추가하십시오. 그런 다음 리스너를 추가 할 수의 당신이

<form id="myForm"> 
    <input id="myInput" name="myName" type="text" /> 
</form> 

있다고 가정 해 봅시다 :

$("#myForm").die().live('submit',function(e) { 
    e.preventDefault(); 
    $.ajax({ 
     type : POST, 
     url : localhost:8080/myUrl, 
     dataType : 'json', 
     cache: false, 
     contentType: "application/x-www-form-urlencoded; charset=UTF-8", 
     data : $("#myForm").serialize(), 
     success : function(){ //do what you want here, like displaying validation errors...}, 
     error:function (xhr, ajaxOptions, thrownError){ //manage ajax errors} 
    }); 

    return false; 
}); 

를 따라서 당신의 저장 버튼을 그냥 일반 입력 유형 =입니다

재밌게을 "제출"!

관련 문제