2013-03-01 168 views
0

现在用下面的代码在运行时改变类jQuery的事件的内容jQuery的添加删除类

$("#txtNewAttributes").focusout(function() { 
    var attributeTextBox = $("#txtNewAttributes").val() 
    if ($.trim(attributeTextBox) == "Height") 
     $(txtNewValues).removeClass('alphaonly').addClass('numbersonly'); 
    if ($.trim(attributeTextBox) == "string" || $.trim(attributeTextBox) == "string2") 
     $(txtNewValues).removeClass('numbersonly').addClass('alphaonly'); 
}); 

并使用页面加载的类名时遇到了验证。

我的问题是在FireBug我看到班级名称已更改为txtNewValues,但仍然期望的验证(仅限alphaonly,numbersonly)不会被解雇。

我在这里错过了什么吗?

+0

你能为它添加一个提琴手吗? – 2013-03-01 09:29:55

+0

与[tag:jquery-validate]插件无关。已移除标记。 – Sparky 2013-03-01 16:04:06

回答

0

可能只有数字,只有alpha验证才会在focusout事件中被触发。 由于您正在为同一事件分配类,因此可能是执行顺序导致此问题的原因。请先检查一下。

如果是这种情况,那么您可以从以下帖子获得帮助。

Event Ordering