jQuery检查attr = value

bee*_*imi 37 jquery conditional if-statement attr

我似乎遇到了代码问题.我需要说:

if ( $('html').attr('lang').val() == 'fr-FR' ) {
    // do this
} else {
    // do that
}
Run Code Online (Sandbox Code Playgroud)

当我检查控制台时,我只是得到一个错误,告诉我这不是一个功能.帮助将不胜感激.

谢谢,

Mig*_*iro 80

只需删除.val()即可.喜欢:

if ( $('html').attr('lang') == 'fr-FR' ) {
    // do this
} else {
    // do that
}
Run Code Online (Sandbox Code Playgroud)

  • 你很快回答,我要再等5分钟才能接受它:) (2认同)

zzz*_*Bov 8

jQuery的attr方法返回属性的值:

.attr()方法仅获取匹配集中第一个元素的属性值.要单独获取每个元素的值,请使用循环结构,例如jQuery .each().map()方法.

所有你需要的是:

$('html').attr('lang') == 'fr-FR'
Run Code Online (Sandbox Code Playgroud)

但是,您可能希望进行不区分大小写的匹配:

$('html').attr('lang').toLowerCase() === 'fr-fr'
Run Code Online (Sandbox Code Playgroud)

jQuery的val方法返回表单元素的值.

.val()方法主要用于获取表单元素的值,例如input,selecttextarea.在<select multiple="multiple">元素的情况下,该.val()方法返回包含每个所选选项的数组; 如果未选择任何选项,则返回null.