jQuery noob ここでは、行の背景色を交互に生成しようとしています。これは HTML で機能します。
<script type="text/javascript">
$(document).ready(function() {
$('.stripedtable tr:even td').addClass(" evenrow");
alert("Just executed stripedtable jQuery in MasterPage");
});
</script>
"evenrow" クラスが のクラスに追加され、偶数行のみが対象になります。すごい!
ASP.NET MasterPage に配置する場合を除いて、「evenrow」クラスは追加されません。FireBug では、関数が実行されていることと、jQuery があることを確認します。はalert()
、ページが読み込まれた後にメソッドが起動していることを示します。ただし、「偶数行」クラスはなく、ストライプもありません。
私が望むように変更されていないテーブルが、MasterPage から継承するページの UserControl によって生成されることはおそらく関連があります。
これは奇妙です。[ソースの表示] に移動し、ソース全体を NoStripes.html にコピーして、ブラウザーで HTML ページを開くと、"evenrow" クラスとストライプが表示されます。jQuery は正常に動作します。
これは、MasterPage からメソッドが起動されたときに、(どういうわけか) HTML が実際には存在しないことを意味しているようです。jQuery はそれを変更できないのでしょうか?! 生成されたソースを保存したので、HTML は NoStripes.html と共にありますか?!
UserControl のコンテンツ プレースホルダーに $('.stripedtable など) を配置してみました。はalert()
発射を示しています。ストライプはありません。
提案?私は解決策を見つけることなく、長々とググりました。それはおそらく単純なことですが、私には理解できません。
TIA - ホイスター