2011-08-02 2 views
1

내가 대신 그 지역에 내 코드를 삽입해야하는 "성공"지역에서 함수를 호출 할 수 있도록하려는 기능을 수행합니다. 나는 jQuery.ajax() 함수의 외부에 배치하는 방법을 알아 내려고 노력하고있어, 그래서 내가 두 번 코드를 사용할 것입니다. 여기 jQuery를 아약스 전화는

내 현재 코드입니다 :

$.ajax({ 
    type: "GET", 
    url: "ws/getweather.ashx?zip=" + vZip, 
    dataType: "xml", 
    success: function (xml) { 
    $(xml).find('weather').each(function() { 
    // Load New Data 
    ... 
}); 
}, 
    error: function (xml) { 
    alert("Unrecognized Region. Please try again."); 
    } 
});  

그래서 대신 가지고 ...

function (xml) { 
    $(xml).find('weather').each(function() { 
    // Load New Data 
    ... 
}); 
나는 다른 함수의 이름을 넣어, 그 함수에 XML을 전달하고 싶습니다

. 그렇게하면 다른 이벤트에서 동일한 코드 집합을 호출하게 할 수 있습니다.

미리 감사드립니다.

UPDATE ============================================= ====== 자신의 적시 대응을위한 마이크 리차드에

감사합니다. 몇 가지 세부 사항을 추가하여 XML을 다른 함수로 전달하는 의미있는 구문을 추가했습니다.

somwhere 아래 다음
$.ajax({ 
type: "GET", 
url: "ws/getweather.ashx?zip=32751", 
dataType: "xml", 
success: function (xml){ 
    weatherize(xml); 
}, 
error: function (xml) { 
    alert("Unrecognized Region. Please try again."); 
} 
}); 

그리고, 내 다른 기능

function weatherize(xml) { 
    $(xml).find('weather').each(function() { 
// Load New Data 
... 
}) 
}; 
+1

이봐 연락. 또한 참고로 래퍼 함수가 필요하지 않습니다. 당신은 단지 성공할 수 있습니다 : weatherize, –

답변

5

당신은 somehwere 다른, 그 매개 변수 :

success : successFunction, 

와하는 기능에 전달할 수 있습니다

일을 기뻐
function successFunction(data) { 
    // Do Something 
} 
+0

감사합니다 마이크, 그랬어. 위에서 작동 한 정확한 구문을 게시했습니다. 멋진 한 주를 보내십시오! – ContactEstablished