Javascript 能否在同一个onBlur事件上创建多个函数?
我有一个很好的默认值检查,客户端希望向Javascript 能否在同一个onBlur事件上创建多个函数?,javascript,mootools,mootools-events,Javascript,Mootools,Mootools Events,我有一个很好的默认值检查,客户端希望向onBlur事件添加额外的功能。默认值检查是全局的,可以正常工作。新功能要求将一些特定于字段的值传递给新功能。如果不是因为这个,我会把它钉在默认检查上,然后就完成了 我的问题是,我能做这样的事情,让他们都开火吗?有什么更好的办法 默认检查 $(document.body).getElements('input[type=text],textarea,tel,email').addEvents ({ 'focus' : function(){
onBlur
事件添加额外的功能。默认值检查是全局的,可以正常工作。新功能要求将一些特定于字段的值传递给新功能。如果不是因为这个,我会把它钉在默认检查上,然后就完成了
我的问题是,我能做这样的事情,让他们都开火吗?有什么更好的办法
默认检查
$(document.body).getElements('input[type=text],textarea,tel,email').addEvents ({
'focus' : function(){
if (this.get('value') == this.defaultValue)
{
this.set('value', '');
}
},
'blur' : function(){
if (this.get('value') == '')
{
this.set('value', (this.defaultValue));
}
}
});
新增功能
其思想是像往常一样处理默认值,但在输入字段值时启动新函数。在我看来,一个人必须先开火,但怎么开枪呢
同样,由于值传递的是特定于字段的值,因此我不能将其转储到全局default check
函数中
我希望这是有意义的。我想你在使用Mootools?我不太了解语法,但我创建了一个JSFIDLE,它似乎可以与Mootools一起使用,而不是其他库 这是我用来测试它的小提琴:
答案似乎是肯定的,当然是Chrome,但我相信每个浏览器。只需将自定义变量存储在。技术上不符合标准[在HTML 4中],但它可以:
<input type='text' id='field_01' value='default data' data-customvar="variableForThisField">
$(document.body).getElements('input[type=text],textarea,tel,email').addEvents ({
'focus' : function(){
if (this.get('value') == this.defaultValue)
{
this.set('value', '');
}
},
'blur' : function(){
if (this.get('value') == '')
{
this.set('value', (this.defaultValue));
} else {
driveData(this.get('value'), this.get('data-customvar'));
}
}
});
$(document.body).getElements('input[type=text],textarea,tel,email')。addEvents({
“焦点”:函数(){
if(this.get('value')==this.defaultValue)
{
此.set('值','');
}
},
“模糊”:函数(){
if(this.get('value')='')
{
this.set('value',(this.defaultValue));
}否则{
driveData(this.get('value')、this.get('data-customvar');
}
}
});
fiddle:听起来好像你真的需要
占位符=
HTML5函数,为非HTML5浏览器提供后备功能。它将允许您按照通常的方式处理默认值和自定义验证器。看看我编写的插件:以及提供的JSFIDLE。mootools forge上还有很多类似的插件。@Dimitar:无法加载您的链接:(但我会研究一下以备将来参考。)非常感谢德沃尔!当然是叮叮当当!我喜欢正确的答案在你看到它的时候点击谢谢灵长类学。现在看起来很明显。。。哦!没问题,@WhiteRau!很乐意帮忙!:)