gpt4 book ai didi

javascript - 组合绑定(bind)事件而不丢失上下文

转载 作者:行者123 更新时间:2023-12-02 15:55:36 26 4
gpt4 key购买 nike

我在表行上有两个事件绑定(bind),一个用于焦点,这样我就可以在文本输入更改之前获取它的值。然后我将 .change 事件绑定(bind)到该事件,这样我就可以在仍然具有以前的值的同时处理它。

但是,在 .change 函数中,“this”现在是正在更改的输入的表,而不再是输入元素本身。我在这里做错了什么?

(function() {
var previousName;

$(".RowClassName").on("focus", ".columnClassName td:first-child input", function() {
previousName = this.value;
}).change(function() {
$(this).width($(this).val().length * 9);

UpdateList(previousName, this.value);
});
})();

最佳答案

为什么this引用该表已在其他答案中解释过。

为了避免重复选择器,您可以存储在变量中或 pass an object事件处理程序的数量:

(function() {
var previousName;
$(".RowClassName").on(
{
focus: function() {
previousName = this.value;
},
change: function() {
$(this).width($(this).val().length * 9);
UpdateList(previousName, this.value);
}
},
'.columnClassName td:first-child input'
);
}());

关于javascript - 组合绑定(bind)事件而不丢失上下文,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31571264/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com