0

私はこのコードを持っています:

  console.log($(domElem).attr('selected'));

  console.log(typeof $(domElem).attr('selected'));

  if($(domElem).attr('selected') == true);
  {
      alert("there is one element selected");
  }

出力は次のとおりです。

false
boolean
false
boolean
false
boolean
...

「これは選択された要素です」が表示されることはないと思っていましたが、アイテムが存在するたびに表示されます。

jQuery1.3.2

何か案が?

ハビエル

4

2 に答える 2

0

条件の後にセミコロンを置くと、次のようになります。

if($(domElem).attr('selected') == true);  
 {
       alert("there is one element selected");  
 } 

「if」ステートメントを終了し、次のように記述した場合と同じです。

if($(domElem).attr('selected') == true){}; 
alert("there is one element selected");

次のように変更します。

if($(domElem).attr('selected') == true)
{
       alert("there is one element selected");
}
于 2012-04-10T12:07:12.763 に答える
0

何を達成したいのかが少し不明確なので、これは答えるのが難しい質問です。

リスト項目が選択されているかどうかを確認するだけの場合は、次のようにします。

HTML (はい、w3schools から削除しました。申し訳ありません!なぜこれが悪いのか):

<select id="selectedLIST">
    <option value="volvo">Volvo</option>
    <option value="saab">Saab</option>
    <option value="mercedes">Mercedes</option>
    <option value="audi">Audi</option>
</select> 

jQuery

var list = $('#selectedLIST');
$(list).change(function(){
    $.each(list.children(), function(index, value){
        if($(value).attr('selected') === true){
            alert("there is one selected");
        }
    });
});

これにより、ユーザーがリスト内の新しい要素を選択すると、HTML タグの「選択された」属性に基づいて「これは選択されたものです」というポップアップが生成されるリストが生成されます。

また、if ステートメントの後にセミコロンを置くと、そのステートメントが「終了」します。

また、セミコロンを入れ忘れると、JS エンジンにセミコロンの挿入が強制されます。

于 2012-04-10T12:07:32.337 に答える