jQuery检查attr = value

时间:2012-06-26 15:53:50

标签: jquery conditional attr if-statement

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

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

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

谢谢,

2 个答案:

答案 0 :(得分:78)

只需删除.val()即可。像:

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

答案 1 :(得分:8)

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

  

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

您只需要:

$('html').attr('lang') == 'fr-FR'

但是,可能想要进行不区分大小写的匹配:

$('html').attr('lang').toLowerCase() === 'fr-fr'

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

  

.val()方法主要用于获取表单元素的值,例如inputselecttextarea。对于<select multiple="multiple">元素,.val()方法返回包含每个选定选项的数组;如果未选择任何选项,则返回null