Javascript 在类中添加全局jquery变量
我有以下JS类:Javascript 在类中添加全局jquery变量,javascript,jquery,Javascript,Jquery,我有以下JS类: import $ from 'jquery'; import dt from 'datatables.net'; class ProductBuilder { constructor() { this.events() } // end constructor events() { $(".btn.btn-primary.btn-sm").on("click", this.ourClickDispatcher.bin
import $ from 'jquery';
import dt from 'datatables.net';
class ProductBuilder {
constructor() {
this.events()
} // end constructor
events() {
$(".btn.btn-primary.btn-sm").on("click", this.ourClickDispatcher.bind(this))
$(".btn.btn-danger.btn-sm").on("click", this.ourClickDispatcher.bind(this))
}
ourClickDispatcher(e) {
//initializing pressedButton the first time
var pressedButton = $(e.target).closest(".btn.btn-primary.btn-sm");
if (pressedButton.data('exists') == 'Product') {
console.log("cpu clicked")
this.loadData('cpu')
}
}
loadData(part) {
//this function loads the data
}
addToTable(e) {
//here the same button is initializing as in ourClickDispatcher
var pressedButton = $(".btn.btn-primary.btn-sm");
}
}
export default ProductBuilder;
我想在按下按钮后添加一个全局变量,而不是总是通过jquery进行搜索,如下所示:
var pressedButton = $(".btn.btn-primary.btn-sm");
我试图将pressedButton
添加到构造函数中,如下所示,但这给了我一个错误:Uncaught ReferenceError:pressedButton未定义
constructor() {
pressedButton
this.events()
} // end constructor
如何将pressed按钮
定义为全局变量,有何建议
谢谢你的回复 如果你真的想要一个全局的(这不是一个好主意),你必须在全局范围内声明它(在所有函数和块之外)。然后,你可以在任何地方设置它 下面是一个易于应用于任何代码的示例
var clickedButton=null;//全局声明的变量
$(“按钮”)。在(“单击”,函数(){
单击按钮=此;
console.log(clickedButton.id);
});
按钮1
按钮2
按钮3
如果你真的想要一个全局(这不是一个好主意),你必须在全局范围内声明它(在所有函数和块之外)。然后,你可以在任何地方设置它
下面是一个易于应用于任何代码的示例
var clickedButton=null;//全局声明的变量
$(“按钮”)。在(“单击”,函数(){
单击按钮=此;
console.log(clickedButton.id);
});
按钮1
按钮2
按钮3
您可以在构造函数中设置它:
constructor() {
this.pressedButton = $(".btn.btn-primary.btn-sm");
this.events()
}
将其用作此选项。在需要时在类内按按钮
文档:您可以在构造函数中进行设置:
constructor() {
this.pressedButton = $(".btn.btn-primary.btn-sm");
this.events()
}
将其用作此选项。在需要时在类内按按钮
文件: