2013-04-11 3 views

답변

3

동일한 페이지에 머무르는 것이 중요하다면 jQuery 바인딩과 같은 JavaScript 라이브러리 중 하나를 사용하는 것이 좋습니다. 사용 AJAX

당신이 다운로드하거나 Pharo 또는 스퀵을 위해 해변을 설치 한 경우

, 당신은 바로 이미지의 jQuery를 예를 찾을 수 있습니다. 표준 포트를 사용하는 경우 http://localhost:8080/javascript/jquery 또는 http://localhost:8080/javascript/jquery-ui에서 찾아보십시오. 당신이 이것을 사용하여 예를 들어, 응용 프로그램에 대해 구성된 jQuery를 도서관이 필요

JQAjaxFunctionalTest>> renderContentOn: html 
    html code id: #logger; with: DateAndTime now. 
    html paragraph: [ 
     html submitButton 
      onClick: (html jQuery ajax 
       script: [ :s | s << (s jQuery: #logger) html: DateAndTime now ]); 
      with: 'Replace'. 
     html submitButton 
      onClick: (html jQuery ajax 
       script: [ :s | s << (s jQuery: #logger) prepend: DateAndTime now ]); 
      with: 'Prepend'. 
     html submitButton 
      onClick: (html jQuery ajax 
       script: [ :s | s << (s jQuery: #logger) append: DateAndTime now ]); 
      with: 'Append' ] 

참고 : 예제의

하나는 대체 간단한 AJAX 구성 요소, 또는 현재 페이지 alteres 내용입니다

| application | 
"your application, eg, when you register it: 
application := WAAdmin register: MyRootComponent asApplicationAt: 'myApp'. 
" 
application preferenceAt: #scriptGeneratorClass put: JQScriptGenerator. 
application addLibrary: JQDeploymentLibrary. 

현재 렌더링 된 페이지의 내용을 동적으로 변경하면 충분합니다.

당신이 jQuery를 직접 사용하지 않도록 Ajaxifier 당신이

해변의 jQuery를 바인딩 당신을 위해 아약스 요청으로 일반 전화를 변환 것 ajaxifier을 갖추고 AJAX를 사용하자.

는 것처럼 응용 프로그램을 구성합니다

| application | 
"your application, eg, when you register it: 
application := WAAdmin register: MyRootComponent asApplicationAt: 'myApp'. 
" 
application preferenceAt: #scriptGeneratorClass put: JQScriptGenerator. 
application 
    preferenceAt: #sessionClass put: WAExpirySession; 
    addLibrary: JQDeploymentLibrary; 
    addLibrary: JQAjaxifierLibrary/. 

평소와 같이 #call:를 사용합니다.

+0

감사합니다. http://ss3.gemstone.com/ss/에 프로젝트를 추가하는 동안 질문이 하나 더 있었지만 monticello에서 커밋 할 때 "ZnHttpUnsuccessful : 501 Not Implemented"오류가 발생했습니다. – j10

+0

몬티셀로 "복사"작업? 그렇지 않다면, 새로운 질문을 열어주세요 :) – Tobias

4

실제로, 적절한 위치에서 업데이트하지 않는 한 아무 것도 할 필요가 없습니다. Seaside는 액션 콜백을 실행 한 후 페이지를 자동으로 다시 렌더링합니다. 기초 정보 장 (online seaside book)을 살펴보십시오. Seaside 렌더링이 작동하는 방식과 액션 콜백이 처리 된 후의 상황을 잘 설명합니다.

예를 들어 ajax를 사용하여보다 복잡한 업데이트 동작이 필요한 경우 포함 된 jQuery-Ajax 바인딩을 사용할 수 있습니다.