Javascript jQuery记住事件中多个焦点的原始文本框值
很难得到正确的解释,所以这里有一点 我有一个表单,有多个Javascript jQuery记住事件中多个焦点的原始文本框值,javascript,jquery,html,css,Javascript,Jquery,Html,Css,很难得到正确的解释,所以这里有一点 我有一个表单,有多个输入:text和一个按钮:submit。当任何表单控件发生更改时,将启用“提交”按钮。另外,文本框onchange使用addClass获得新的花式黄色背景色,以指示值已更改。原始值存储在focusin事件中,然后与新值onchange进行比较 但是,我的目标是,当我再次更改文本框值和焦点时,我希望原始的旧值不变,以便可以重置背景色 提前感谢您可以使用defaultValue属性 var adminWeb=window.adminWeb |
输入:text
和一个按钮:submit
。当任何表单控件发生更改时,将启用“提交”按钮。另外,文本框onchange
使用addClass
获得新的花式黄色背景色
,以指示值已更改。原始值存储在focusin
事件中,然后与新值onchange
进行比较
但是,我的目标是,当我再次更改文本框值和焦点时,我希望原始的旧值不变,以便可以重置背景色
提前感谢您可以使用defaultValue属性
var adminWeb=window.adminWeb | |{};
adminWeb.dirtyHandling=(函数(){
var createView=函数(){
$(“表格”)
.each(函数({
$(this.data(“序列化的”,$(this.serialize());
}).on(“更改输入”,“输入:文本”,函数(e){
$(this.toggleClass(“textbox已更改”,this.value!==this.defaultValue);
var$form=$(this).closest('form');
$form.find(“输入:提交,按钮:提交”)
.prop(“禁用”),$form.serialize()===$form.data(“序列化”);
})
.find(“输入:提交,按钮:提交”)
.道具(“残疾”,真实);
};
返回{
初始化:createView
};
})();
$(函数(){
adminWeb.dirtyHandling.init();
});代码>
.textbox已更改{
背景色:rgba(255、255、0、0.3)
}
保存更改
您可以使用defaultValue属性
var adminWeb=window.adminWeb | |{};
adminWeb.dirtyHandling=(函数(){
var createView=函数(){
$(“表格”)
.each(函数({
$(this.data(“序列化的”,$(this.serialize());
}).on(“更改输入”,“输入:文本”,函数(e){
$(this.toggleClass(“textbox已更改”,this.value!==this.defaultValue);
var$form=$(this).closest('form');
$form.find(“输入:提交,按钮:提交”)
.prop(“禁用”),$form.serialize()===$form.data(“序列化”);
})
.find(“输入:提交,按钮:提交”)
.道具(“残疾”,真实);
};
返回{
初始化:createView
};
})();
$(函数(){
adminWeb.dirtyHandling.init();
});代码>
.textbox已更改{
背景色:rgba(255、255、0、0.3)
}
保存更改
您可以使用defaultValue属性
var adminWeb=window.adminWeb | |{};
adminWeb.dirtyHandling=(函数(){
var createView=函数(){
$(“表格”)
.each(函数({
$(this.data(“序列化的”,$(this.serialize());
}).on(“更改输入”,“输入:文本”,函数(e){
$(this.toggleClass(“textbox已更改”,this.value!==this.defaultValue);
var$form=$(this).closest('form');
$form.find(“输入:提交,按钮:提交”)
.prop(“禁用”),$form.serialize()===$form.data(“序列化”);
})
.find(“输入:提交,按钮:提交”)
.道具(“残疾”,真实);
};
返回{
初始化:createView
};
})();
$(函数(){
adminWeb.dirtyHandling.init();
});代码>
.textbox已更改{
背景色:rgba(255、255、0、0.3)
}
保存更改
您可以使用defaultValue属性
var adminWeb=window.adminWeb | |{};
adminWeb.dirtyHandling=(函数(){
var createView=函数(){
$(“表格”)
.each(函数({
$(this.data(“序列化的”,$(this.serialize());
}).on(“更改输入”,“输入:文本”,函数(e){
$(this.toggleClass(“textbox已更改”,this.value!==this.defaultValue);
var$form=$(this).closest('form');
$form.find(“输入:提交,按钮:提交”)
.prop(“禁用”),$form.serialize()===$form.data(“序列化”);
})
.find(“输入:提交,按钮:提交”)
.道具(“残疾”,真实);
};
返回{
初始化:createView
};
})();
$(函数(){
adminWeb.dirtyHandling.init();
});代码>
.textbox已更改{
背景色:rgba(255、255、0、0.3)
}
保存更改
使用数据属性存储原始值,并对照该属性检查以确定是否设置类。对每个属性进行迭代以查看它们是否都没有更改。类似于
<input data-original="Carl" value='Carl' type='text' />
<input type='submit id='submit' />
var textInputs$ = $('[data-original]');
$('[data-original]').change(function (e) {
var changed = false;
$.each(textInputs$, function () {
var self$ = $(this);
if (self$.attr('data-original') != self$.val()) {
self$.addClass('yellow');
changed = true;
}
});
if (changed) {
$('#submit').removeAttr('disabled');
}
else {
$('#submit').attr('disabled', 'disabled');
}
});
使用数据属性存储原始值,并对照该属性检查以确定是否设置该类。对每个属性进行迭代以查看它们是否都没有更改。类似于
<input data-original="Carl" value='Carl' type='text' />
<input type='submit id='submit' />
var textInputs$ = $('[data-original]');
$('[data-original]').change(function (e) {
var changed = false;
$.each(textInputs$, function () {
var self$ = $(this);
if (self$.attr('data-original') != self$.val()) {
self$.addClass('yellow');
changed = true;
}
});
if (changed) {
$('#submit').removeAttr('disabled');
}
else {
$('#submit').attr('disabled', 'disabled');
}
});
使用数据属性存储原始值,并对照该属性检查以确定是否设置该类。对每个属性进行迭代以查看它们是否都没有更改。类似于
<input data-original="Carl" value='Carl' type='text' />
<input type='submit id='submit' />
var textInputs$ = $('[data-original]');
$('[data-original]').change(function (e) {
var changed = false;
$.each(textInputs$, function () {
var self$ = $(this);
if (self$.attr('data-original') != self$.val()) {
self$.addClass('yellow');
changed = true;
}
});
if (changed) {
$('#submit').removeAttr('disabled');
}
else {
$('#submit').attr('disabled', 'disabled');
}
});
使用数据属性存储原始值,并对照该属性检查以确定是否设置该类。对每个属性进行迭代以查看它们是否都没有更改。类似于
<input data-original="Carl" value='Carl' type='text' />
<input type='submit id='submit' />
var textInputs$ = $('[data-original]');
$('[data-original]').change(function (e) {
var changed = false;
$.each(textInputs$, function () {
var self$ = $(this);
if (self$.attr('data-original') != self$.val()) {
self$.addClass('yellow');
changed = true;
}
});
if (changed) {
$('#submit').removeAttr('disabled');
}
else {
$('#submit').attr('disabled', 'disabled');
}
});
我不确定我是否理解你的问题。是你想要达到的目标吗
您需要在聚焦事件中删除类。我不确定是否理解您的问题。是你想要达到的目标吗
您需要在聚焦事件中删除类。我不确定是否理解您的问题。是你想要达到的目标吗
您需要在聚焦事件中删除类。我不确定是否理解您的问题。是你想要达到的目标吗
您需要在focusin
事件中删除类。就像一个符咒。非常感谢!工作起来很有魅力。非常感谢!工作起来很有魅力。非常感谢!