我需要一種方法來覆蓋jQuery $.post
方法,參數url
。
我需要爲每個腳本追加一個字符串,而不必一一編輯它們。字符串值可能會因爲系統創建而更改。
我知道有一種方法可以100%覆蓋參數的值,但不只是追加。
謝謝你。
我需要一種方法來覆蓋jQuery $.post
方法,參數url
。
我需要爲每個腳本追加一個字符串,而不必一一編輯它們。字符串值可能會因爲系統創建而更改。
我知道有一種方法可以100%覆蓋參數的值,但不只是追加。
謝謝你。
考慮使用自定義功能:
var updateUrl = function(url){
return url + someStuff
}
$.post(
updateUrl(yourUrl),
data,
successCallback
);
所以你在updateUrl
中覆蓋重寫邏輯一次,就是這樣。
根據您想要做的修改,您可以使用.ajaxStart或.ajaxSend方法中的一個來覆蓋url參數。
通常情況下,您可以使用「Duck Punching pattern」來修改現有的JavaScript函數。你可以閱讀這篇文章由保羅愛爾蘭人知道它是如何工作http://paulirish.com/2010/duck-punching-with-jquery/
這裏是他建議的最終模式與jQuery的
使用(function($){
// store original reference to the method
var _old = $.fn.method;
$.fn.method = function(arg1,arg2){
if (... condition ...) {
return ....
} else { // do the default
return _old.apply(this,arguments);
}
};
})(jQuery);
他特別說他不想修改每個腳本 – Alnitak
這個更新對任何體面的IDE順便說一句簡單的單一操作,但是你是對的。 – moonwave99
你知道嗎,我可以使用你的想法......這很簡單,一旦完成,它就完成了並且工作! –