48

コードに問題があるようです。私は言う必要があります:

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

コンソールを確認すると、これは機能ではないというエラーが表示されます。助けていただければ幸いです。

ありがとう、

4

2 に答える 2

106

.val()を削除するだけです。好き:

if ( $('html').attr('lang') == 'fr-FR' ) {
    // do this
} else {
    // do that
}
于 2012-06-26T15:54:30.543 に答える
13

jQueryのattrメソッドは、属性の値を返します。

この.attr()メソッドは、一致したセットの最初の要素の属性値のみを取得します。.each()各要素の値を個別に取得するには、jQueryや.map()メソッドなどのループ構造を使用します。

あなたに必要なのは:

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

ただし、大文字と小文字を区別しない一致を実行することをお勧めします。

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

jQueryのvalメソッドはフォーム要素の値を返します。

この.val()メソッドは主に、、、などのフォーム要素の値を取得するために使用さinputselectますtextarea<select multiple="multiple">要素の場合、.val()メソッドは選択された各オプションを含む配列を返します。オプションが選択されていない場合は、を返しますnull

于 2012-06-26T15:56:09.233 に答える