[英]How to update Vanilla JS variable in scope variable of Angular JS controller
[英]How to update variable in JS
如何從函數更新變量? 我有這個。 但是兩個變量在“ updateFilter()”之后仍為“ 0”。 如何在不運行滑塊功能的情況下執行“ loadAjax(var1,var2)”?
var var1 = 0,
var2 = 0;
$("#slider").slider({
// options...
stop: function( event, ui ) {
var var1 = ui.values[ 0 ], // <- changes on move
var2 = ui.values[ 1 ]; // <- changes on move
updateFilter();
}
});
function updateFilter() {
loadAjax(var1, var2);
}
對不起我的英語不好
代碼的問題是您要定義與全局范圍中定義的變量相同的變量
var var1 = 0,
var2 = 0;
//in function below you are redefining var1 and var2 varible please dont do that
stop: function( event, ui ) {
var var1 = ui.values[ 0 ], // <- changes on move
var2 = ui.values[ 1 ]; // <- changes on move
updateFilter();
而不是上面的代碼stop方法應該是
stop: function( event, ui ) {
var1 = ui.values[ 0 ], // <- changes on move
var2 = ui.values[ 1 ]; // <- changes on move
updateFilter();
你為什么不通過變量直接像這樣起作用
updateFilter(var1, var2);
function updateFilter(var1, var2) {
loadAjax(var1, var2);
}
您的值為0,因為您正在隱藏全局變量,因此只需刪除stop函數中的var
$("#slider").slider({
// options...
stop: function( event, ui ) {
var1 = ui.values[ 0 ], // <- changes on move
var2 = ui.values[ 1 ]; // <- changes on move
console.log(var1, var2);
updateFilter();
}
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.