jQuery ajax get 과 post 배경 상호작용 의 비밀

10487 단어 jQuery ajax
이틀 간 관심 기능 모듈 (인 스타 그램 과 유사) 을 만 들 고 있다.여러 페이지 에서 '관심' 단 추 를 통 해 관심 을 가지 거나 친구 의 작업 을 취소 해 야 합 니 다.페이지 에 대응 하 는 단 추 를 놓 고 조작 합 니 다.효율 이 낮 고 유지 보수 성 이 떨어진다.따라서 jQuery 의 ajax 방법 을 통 해 비동기 작업 을 하려 면 효율 이 높 고 효과 가 빠 르 며 포장 하려 면 JS 파일 몇 개 만 인용 하면 쉽게 사용 할 수 있 습 니 다.그래서 get 을 사용 하 는 방법 이 가장 먼저 생각 났 다.
먼저 jQuery 라 이브 러 리 파일 과 json 2. js (믿 을 만 한 가구, 배경 을 프론트 데스크 에 되 돌려 주 는 문자열 을 JSON 대상 으로 바 꾸 는 데 사 용 됩 니 다. FF 에 서 는 이 파일 을 인용 할 필요 가 없습니다. 주로 IE 에 서 는 JSON. parse 방법 이 지원 되 지 않 기 때 문 입 니 다).
<script type="text/javascript"> function FollowMeOperate() { //非常感谢key yao的耐心的解释,缓存问题因此加上时间戳就可以使用get方法,由此完全可以证明之前我的推断-都是缓存搞的鬼 $.get("FollowMeAJAX.aspx?t=" + new Date(), { followID: 429 }, function(data, action) { //$.post("FollowMeAJAX.aspx", { followID: 429 }, function(data, action) { //之前使用get请求时会发现第二次点击按钮时未触发后台事件,因此被迫只能使用post请求 //$.get("FollowMeAJAX.aspx?Param=Operate", { followID: GetUrlParam("id") }, function(data, action) { var json = JSON.parse(data); if (json.success) { var link = $("#_linkFollow"); //改变状态 if (link.text() == "[关注]") { link.text("[取消]"); } else { link.text("[关注]"); } } alert(json.msg); }); } script> head> <body> <form id="form1" runat="server"> <div> <a id="_linkFollow" href="javascript:FollowMeOperate();">[关注]a> div> form> body> html>
백 엔 드 호출 테스트 JSON 코드 되 돌리 기 (FollowMeAJAX. aspx):
protected void Page_Load(object sender, EventArgs e)

        {

            // JQuery get post     JSON   ,       JSON                  ,    JQuery  JSON      

            Response.Write("{\"success\":true,\"msg\":\"  get         ,  post         !\"}");

            Response.End();

        }

프론트 데스크 톱 에 $. get 방법 을 사용 하면 '관심' 링크 를 클릭 할 때마다 정확 한 팝 업 대화 상 자 를 통 해 백 스테이지 에서 피드백 하 는 정 보 를 알려 줍 니 다. 그러나 이러한 가상 에 속지 마 세 요. 갱 아버 지 는 이제 막 시작 되 었 습 니 다. 백 스테이지 에서 정지점 추적 을 하면 $. get 방법 을 사용 할 때 링크 를 처음 클릭 할 때 정지점 이 백 스테이지 로 갑 니 다.그러나 한 번 이상 클릭 하면 백 스테이지 로 넘 어가 지 않 지만 가상 으로 대화 상 자 를 제시 하여 백 스테이지 와 상호작용 을 한 것 으로 착각 합 니 다.
처음에 제 가 만난 문 제 는 프론트 데스크 톱 에서 작업 성공 에 관심 을 가 져 야 한 다 는 것 을 분명히 알려 주 었 지만 데이터 베이스 의 필드 는 수정 되 지 않 았 습 니 다 (첫 번 째 작업 제외). 제 가 $. get 방법 을 $. post 방법 으로 바 꿀 때 까지 문 제 를 해결 할 수 있 었 습 니 다.
자 료 를 대충 찾 아 보 니 get 은 캐 시 되 고 post 는 캐 시 되 지 않 는 다 는 것 을 알 게 되 었 습 니 다. 그래서 $. get 방법 을 사용 할 때 캐 시 를 해서 저 에 게 음 모 를 꾸 미 는 것 이 분명 합 니 다. 왜냐하면 배경 과 상호작용 을 하지 않 았 기 때 문 입 니 다. 당신 은 어디에서 피드백 정 보 를 주 었 습 니까?
$. get 과 $. post 를 사용 하여 불필요 한 시간 을 많이 낭비 하지 않도록 주의 하 시기 바 랍 니 다. 끊 임 없 는 정리 에서 공부 하 는 것 이 효과 가 가장 좋 습 니 다.-->

좋은 웹페이지 즐겨찾기