나는 가능한 한 많은 OO을 유지하기 위해 노력하고 있지만, ASP.NET AJAX는 서버에서 돌아온 후 이상한 일을하고있는 것 같다 ... 자바 스크립트와 ASP.NET문제 AJAX
function Person(personId) {
var id = personId;
var firstName;
var lastName;
this.initializeStep1 = function() {
PeopleServices.getFirstName(id, this.initializeStep2);
}
this.initializeStep2 = function(foundFirstName) {
alert(foundFirstName);
firstName = foundFirstName;
PeopleServices.getLastName(id, this.initializeStep3);
}
this.initializeStep3 = function(foundLastName) {
alert(foundLastName);
alert(firstName);
lastName= foundLastName;
}
this.initializeStep1();
}
이것이 기본입니다. 그래서 기본적으로 사람을 생성하고 그 사람을 초기화하기 위해 이름과 성을 서버에서 검색합니다.
새로운 사람을 만들면 initializeStep1을 거쳐 서버 webmethod getFirstName을 호출하고 결국 initializeStep2에 도달합니다. 경고 (foundFirstName); 작동합니다. 발견 된 이름을 알려주고 올바른 것입니다 ... 이제 private 변수 firstName을 찾은 것으로 설정 한 후 서버에 두 번째 호출을합니다 ...
이번에는 도달하지 않습니다. initializeStep3, 나는 내가 여전히 작동하지 않습니다
PeopleServices.getFirstName(id, this.initializeStep3);
와 라인
PeopleServices.getLastName(id, this.initializeStep3);
를 대체 할 경우에도 있기 때문에 서버 측에 실패하지 말았어야 알고있다.
첫 번째 서버 호출 후 "this"또는 이와 비슷한 방식으로 initializeStep3을 호출 할 수없는 곳에서 참조를 잃어 버렸는지 궁금합니다. 누구든지 아이디어가 있습니까?
몇 가지 참고 사항 :
- 나는 개별적으로 테스트 한 서버 webMethods의 모든 노력 알고있다.
- 내 OO가 여기에 있는지 확실하지 않습니다.
- 나는 AJAX에 대해서도 잘하고 있는지 잘 모르겠다.
도움 주셔서 감사합니다.
내가 현실 세계에서, 단지 전체 사람을 반환하지 할 이유가 없을 것입니다 때문에, 그냥 예입니다 희망이 필요합니다. –
입니다. 내가 처리하고있는 것은 의미가 없어도 더 많은 데이터를 반환하는 객체로 만들 수 없습니다. –