-1

完全に機能する次のJavascriptコードがあります。

$(document).ready(function() {   
  $("#Select1").setDefault();    
  $("#Select2").setDefault();     
  $("#Select3").setDefault();      
  $("#Select4").setDefault();   
  $("#Select5").setDefault();      
  $("#Select6").setDefault();   
});  

さて、次のコンパクトなコードを使用すると機能しません。

$(document).ready(function() {
  for(i=1; i<=6; i++){
    $("#Select"+i).setDefault();    
  }
}); 

次のように書くと、forは正常に動作します。

for(i=1; i<=6; i++){
    alert(i);    
}

何か案が?

PS: Chrome と Firefox を使用しています

4

2 に答える 2

1

ループ コードに右括弧がありません... a)

$(document).ready(function() {
  for(i=1; i<=6; i++){
    $("#Select"+i).setDefault();    
  }
}); 

Firebug などの開発者ツールを使用すると、これらの構文エラーが強調表示されます。Chrome を使用している場合は、F12 キーを押すと、JavaScript コンソールなどにアクセスできます...

于 2012-06-09T09:13:06.043 に答える
1

ループを使用する既存のコードを修正することもできますが、代替のよりクリーンなソリューションとして、セレクターで始まる属性を使用してみてください。

$(document).ready(function() {   
    $('[id^="Select"]').setDefault();    
}); 

HTML で sを使用していると仮定すると<select>(ID からの推測)、セレクターをもう少し具体的にすることができます。

$('select[id^="Select"]').setDefault();    
于 2012-06-09T09:22:07.723 に答える