[英]Assign a variable inside an $.ajax() function
我想在$ .ajax()函數內分配一個變量,以便下次調用該函數時該變量仍然可用。
這可能嗎?
var xxx = 1;
沒有做這份工作。
謝謝!
該變量必須存儲在靜態位置,例如隱藏的輸入或數據屬性。
$('#hiddenId').val(1);
// Or
$('#someFooId').data('last-ajax-value', 1);
下次調用該函數時,可使用此函數獲取先前的值:
var lastValue = $('#hiddenId').val();
// Or
var lastValue = $('#someFooId').data('last-ajax-value');
說明:存儲與匹配元素關聯的任意數據
我認為您應該做類似的事情,並為此避免 DOM操作...
(function($){
var YourApp = {
var your_vault : "",
binders : function(){
$('#button').on('click',YourApp.ajaxRequest);
},
ajaxRequest : function() {
// Do something with YourApp.your_vault
$.ajax({
url: 'http://someurl.com',
succes: function(){
// Modifying your value:
YourApp.your_vault = 'A wonderfull new value';
}
});
}
};
YourApp.binders();
})(jQuery);
由於我沒有您應用中的真實代碼,因此無法提供更准確的代碼,但我想您會明白的。
關鍵思想是范圍。 只要您將var置於較高的范圍內,就可以在較低的范圍內對其進行修改, 而無需使用var
關鍵字。
如果您的變量是在全局級別定義的,則可以在許多地方使用它。
您需要了解變量作用域 ,無論運行哪個函數,這同樣適用於javascript。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.