2

我再次需要一些关于 jQuery 脚本的帮助 :-) 只是想玩 jQuery..我使用下面的脚本为选择元素的着色选项。它在纯 html 中工作,但在我的 asp.net 2.0(主 + 内容页面)中没有。脚本放置在 Head 部分。

function pageLoad(){
   var allOddSelectOption  = "select option:odd";
   var evenStyle = "background-color:'#f4f4f4';color:'#555'";

   $(allOddSelectOption).attr('style',evenStyle);
}

我也尝试过使用$(document).ready(function(){,但也没有用。

任何想法,最欢迎提示?

4

3 回答 3

4

检查css(properties),你可以很容易地应用样式。

$(document).ready(function(){
  $("select option:odd").css({'background-color' : 'yellow', 'font-weight' : 'bolder'});
});

编辑:对于 ASP .NET 2.0$(document).ready()将起作用,因为您可以多次调用它,即使它不在 head 部分中也不会有问题。


对于 ASP .NET 3.5

您可以在 MasterPage 中添加一个头部占位符,如下所示:

<asp:ContentPlaceHolder id="head" runat="server">
</asp:ContentPlaceHolder>

然后在您的子页面中,您可以通过 Content 标签将 html 放入其中:

<asp:Content ID="Content1" ContentPlaceHolderID="head" Runat="Server">
  <script language="JavaScript>
    //Scripts here!
  </script>
</asp:Content> 
于 2008-12-12T04:04:39.943 回答
1

我会说在每种情况下都使用 .addClass 而不是添加内联 css 属性。这些在 javascript 中很难维护。

e.g $('#someDiv').addClass('odd');
于 2008-12-12T09:05:44.033 回答
0

当您使用母版页时,ASP.Net 会修饰您的元素 ID。它会在前面放很多东西,但最后留下你的原始 ID。因此,您可以在 ASP.Net 服务器控件渲染中使用这样的选择器。

$("[id$=originalIdFromAspxPage]").attr...

$=部分意味着这将匹配任何具有以您提供的 ID 结尾的 ID 的元素。

它不如直接 ID 选择器那么有效,但它在 ASP.Net 页面上就像一个魅力。

于 2008-12-12T04:07:43.727 回答