如何检查jQuery中的表单下是否存在一个元素

iSa*_*mya 4 javascript jquery

我有一个带有id的表单,commentform如果有任何登录用户访问该页面p,则会在带有类的表单下生成一个标记logged-in-as.现在我正在尝试检查是否p存在,如果不存在则执行我使用的验证keyup().这是一个小片段......

$('form#commentform').keyup(function() {
        if( ! $(this).has('p').hasClass('logged-in-as') ) {
            ....
            } else {
                ......
            }
        }
    });
Run Code Online (Sandbox Code Playgroud)

现在的问题是,if( ! $(this).has('p').hasClass('logged-in-as') )无论具体是否p存在,都没有给我预期的结果.

你们中的任何人能告诉我任何其他/更好的方法来检查这个吗?

Ath*_*ace 6

$('form#commentform').keyup(function() {
    if($(this).find('p.logged-in-as').length == 1) {
        ....
        } else {
            ......
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

你可以这样做来找到它.

  • 在您修复它时删除了Downvote. (2认同)