Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 每个函数都有帮助_Jquery_Jquery Selectors - Fatal编程技术网

Jquery 每个函数都有帮助

Jquery 每个函数都有帮助,jquery,jquery-selectors,Jquery,Jquery Selectors,我想知道我做错了什么。调用重置按钮时,第一个函数运行正常,但由于某些原因,第二个函数没有执行任何操作。表单会被重置,但第二个警报不会弹出,警告类也不会被删除。谢谢你的帮助 $('#registration :reset').click(function() { alert("reset was clicked"); $('#registration :text').each(function() { if ($(this).hasclass('warn')) {

我想知道我做错了什么。调用重置按钮时,第一个函数运行正常,但由于某些原因,第二个函数没有执行任何操作。表单会被重置,但第二个警报不会弹出,警告类也不会被删除。谢谢你的帮助

$('#registration :reset').click(function() {
    alert("reset was clicked");
    $('#registration :text').each(function() {
        if ($(this).hasclass('warn')) {
            $(this).removeClass('warn');
        }

        if (!$(this).hasclass('texta')) {
            $(this).addClass('texta');
        }

        alert("value");
    });
});

尝试使用live,因为它们会被添加和删除

我想当你把它们取下来的时候,它们就没有束缚了

$('#registration :reset').live('click', function() {
    alert("reset was clicked");
    $('#registration :text').each(function() {
        if ($(this).hasClass('warn')) {
            $(this).removeClass('warn');
        }

        if (!$(this).hasClass('texta')) {
            $(this).addClass('texta');
        }

        alert("value");
    });
});

尝试使用live,因为它们会被添加和删除

我想当你把它们取下来的时候,它们就没有束缚了

$('#registration :reset').live('click', function() {
    alert("reset was clicked");
    $('#registration :text').each(function() {
        if ($(this).hasClass('warn')) {
            $(this).removeClass('warn');
        }

        if (!$(this).hasClass('texta')) {
            $(this).addClass('texta');
        }

        alert("value");
    });
});

Javascript语言是。
hasclass()
方法不存在,但确实存在。你应该写:

$('#registration :text').each(function() {
    if ($(this).hasClass('warn')) {
        $(this).removeClass('warn');
    }

    if (!$(this).hasClass('texta')) {
        $(this).addClass('texta');
    }

    alert("value");
});
也就是说,您通常不需要在或之前调用
hasClass()
,因为
addClass()
不会在元素已经具有您指定的类的情况下添加副本,并且
removeClass()
不会删除元素没有的类。所以你可以简单地写:

$('#registration :text').each(function() {
    $(this).removeClass('warn');
    $(this).addClass('texta');
    alert("value");
});
或者,使用@deceze这样的方法链接:

$('#registration :text').each(function() {
    $(this).removeClass('warn').addClass('texta');
    alert("value");
});

Javascript语言是。
hasclass()
方法不存在,但确实存在。你应该写:

$('#registration :text').each(function() {
    if ($(this).hasClass('warn')) {
        $(this).removeClass('warn');
    }

    if (!$(this).hasClass('texta')) {
        $(this).addClass('texta');
    }

    alert("value");
});
也就是说,您通常不需要在或之前调用
hasClass()
,因为
addClass()
不会在元素已经具有您指定的类的情况下添加副本,并且
removeClass()
不会删除元素没有的类。所以你可以简单地写:

$('#registration :text').each(function() {
    $(this).removeClass('warn');
    $(this).addClass('texta');
    alert("value");
});
或者,使用@deceze这样的方法链接:

$('#registration :text').each(function() {
    $(this).removeClass('warn').addClass('texta');
    alert("value");
});
请尝试以下方法:

$('#registration :text').removeClass('warn').addClass('texta');

看看jQuery的魔法

几乎每个jQuery方法都对
$
函数返回的每个元素起作用。因此,无需遍历所有结果,
removeClass
addClass
将应用于
#注册:text
选择器找到的所有元素。此外,在删除或添加类之前,不需要进行任何检查。如果您正在添加类,而元素已经拥有该类,则不会发生任何事情。反之亦然,用于删除类

尝试阅读,这就是jQuery如此强大的原因

试试这个:

$('#registration :text').removeClass('warn').addClass('texta');

看看jQuery的魔法

几乎每个jQuery方法都对
$
函数返回的每个元素起作用。因此,无需遍历所有结果,
removeClass
addClass
将应用于
#注册:text
选择器找到的所有元素。此外,在删除或添加类之前,不需要进行任何检查。如果您正在添加类,而元素已经拥有该类,则不会发生任何事情。反之亦然,用于删除类


尝试阅读,这就是jQuery如此强大的原因

这可能无法解决问题,但您可以将其缩短为
$(“#注册:text”)。removeClass('warn')。addClass('texta')
。你是说整个代码只是第一次工作,还是说.each()方法永远不会工作?因为它实际上可能会解决问题,所以我添加了这个作为答案…:)旁注:使用Firefox中的FireBug(或Chrome中的FireBug Lite)处理js错误。这可能无法解决问题,但您可以将其缩短为
$('#注册:text')。removeClass('warn')。addClass('texta')
。你是说整个代码只是第一次工作,还是说.each()方法永远不会工作?因为它实际上可能会解决问题,所以我添加了这个作为答案…:)旁注:使用Firefox中的FireBug(或Chrome中的FireBug Lite)来处理js错误。意外地回答了以下问题:)请解释一下这是如何工作的?我喜欢它有多简单,我只是想知道。@samuel这叫做jquery链接,它的性能也很好//@samuel,因为你不能将同一个类添加到一个已经有它的元素中,同样的,当元素已经有那个类时,你也不能删除它。这两个函数都将作用于选择器匹配的所有元素。意外地回答了以下问题:)请解释一下这是如何工作的?我喜欢它有多简单,我只是想知道。@samuel这叫做jquery链接,它的性能也很好//@samuel,因为你不能将同一个类添加到一个已经有它的元素中,同样的,当元素已经有那个类时,你也不能删除它。这两个函数都将作用于选择器匹配的所有元素。