我有一个文本输入,当事件" blur"触发时,我会验证其值。当该值无效时,我会更改输入背景颜色,当我解决错误时,我希望将输入的原始颜色和样式再次设置为其。但是,在解决错误或遇到错误之后,我正在失去原始样式的情况,通常在更改输入样式时会发生这种错误。我试图寻找原始样式可以再次设置它,但在JQueryui Styles中找不到它。需要您的帮助:
html代码:
<input type='text' name='val1' id='val1'/>
jQuery代码:
function is_numeric(value)
{
var pattern= new RegExp(/^[0-9]+$/);
return pattern.test(value);
}
$(document).ready(function ()
{
$('#val1').blur(function()
{
if(!is_numeric($('#val1').val()))
{
$('#val1').css('background-color','#E65050');
}
else
{
$('#va1').css('background-color','white '); /// here ??
}
});
});
请使用class
请参阅 demo
CSS
.error {background-color:#E65050}
jQuery
function is_numeric(value)
{
var pattern= new RegExp(/^[0-9]+$/);
return pattern.test(value);
}
$(document).ready(function ()
{
$('#val1').blur(function()
{
if(!is_numeric($('#val1').val()))
{
$('#val1').addClass('error');
}
else
{
$('#va1').removeClass("error");
}
});
});
而不是
$('#va1').css('background-color','white '); /// here ??
使用
$('#va1').css('background-color','');
为什么不只是将其存储在文档中:
$(document).ready(function ()
{
var defColor = $('#val1').css('background-color');
$('#val1').blur(function()
{
...
$('#val1').css('background-color', defColor);
您是否注意到了拼写错误:
$('#va1').css('background-color','white ');
应该像这样
$('#val1').css('background-color','white ');