1
我正在检查模糊上的一些文本框,有些需要根据相同的critera进行检查,因此我将这些全部放在一个模糊函数中。我注意到我的页面看起来很慢,在萤火虫中,我一直在报错too much recursion
。jquery在多个模糊函数上递归太多
我的代码如下,它检查文本框,然后将ID发送到另一个函数,该函数添加一个类来说明它是否有效。
$('#username, #customerName, #customerTown, #customerCounty, #contactName, #staffFirstname, #staffLastname, #staffTown, #staffCounty').blur(function()
{
var ID = $(this).attr('id');
var val = $(this).val();
if(validate(val))
{
valid(ID);
}
else
{
notValid(ID);
}
});
function valid(elementID)
{
$('#'+elementID+'Img').html('<img src="../images/tick.png" alt="Valid" title="Valid" />');
$('#' + elementID).addClass('valid');
}
function notValid(elementID)
{
$('#'+elementID+'Img').html('<img src="../images/cross.png" alt="Not Valid" title="Not Valid" />');
$('#' + elementID).removeClass('valid');
}
function validate(val)
{
var reg = new RegExp ("^([a-zA-Z ]){3,90}$");
var regTest = reg.test(val);
if(regTest)
{
return true;
}
else
{
return false;
}
}
如果我为每个文本框做了单独的blur
函数会更好吗?还是有另一种方式?我真的不想为每个文本框写一个模糊函数。
有什么建议吗?谢谢。
你确定它的这个代码,导致缓慢和错误信息?我发现什么都不会很慢,也没有递归。 – Guffa 2011-02-14 01:23:06
这基本上是我在我的页面上的所有代码,还有几个文本框被检查,但它的方式与上面相同。只有其他功能是一个onclick,但我得到错误之前,它被按下。谢谢。 – Elliott 2011-02-14 01:27:24