我使用踢反弹球CSS/JQuery的(DropKick Link)的风格我的ASP更新不工作:DropDownList的:为什么CSS时,下拉列表中没有刷新页面
<asp:UpdatePanel ID="UpdatePanel1" UpdateMode="Conditional" runat="server">
<ContentTemplate>
<asp:DropDownList AutoPostBack="True" OnSelectedIndexChanged="ddlMain_SelectedIndexChanged" ClientIDMode="Static" ID="ddlMain" style="width: 365px;" class="default" runat="server" AppendDataBoundItems="true">
<asp:ListItem Text="BY PHYSICIAN" Value="0" Selected="True" />
<asp:ListItem Text="BY LOCATION" Value="1" />
<asp:ListItem Text="BY SPECIALTY" Value="2" />
</asp:DropDownList>
<br /><br />
<asp:DropDownList ClientIDMode="Static" ID="ddlDrillDown" style="width: 365px;" class="default" runat="server" AppendDataBoundItems="true">
</asp:DropDownList>
</ContentTemplate>
<Triggers>
<asp:AsyncPostBackTrigger ControlID="ddlMain" />
</Triggers>
</asp:UpdatePanel>
当第一次加载页面,我带有这样的:
我使用的UpdatePanel,触发器和ScriptManager控件,所以当用户选择从ddlMain
的ddlDrillDown
的选择反映无需重新加载页面的变化。我终于工作,但现在发生的事情是踢反弹球风格的消失,如果我选择ddlMain
不同的选项:
开发者控制台显示此页面加载:
<div id="dk_container_ddlMain" class="dk_container dk_theme_default default" aria-hidden="true" tabindex="0" style="margin: 0 auto; display: inline-block;">
<a class="dk_toggle dk_label" style="padding: 10px; color: rgb(43, 71, 125); width: 365px;">
BY PHYSICIAN
</a>
<div class="dk_options">
<ul class="dk_options_inner" aria-hidden="true" role="main">
<li>
<a data-dk-dropdown-value="0" style="padding: 20px; color: #2B477D">
BY PHYSICIAN
</a>
</li>
<li>
<a data-dk-dropdown-value="1" style="padding: 20px; color: #2B477D">
BY LOCATION
</a>
</li>
<li>
<a data-dk-dropdown-value="2" style="padding: 20px; color: #2B477D">
BY SPECIALTY
</a>
</li>
</ul>
</div>
<select id="ddlMain" class="default" style="width: 365px;" onchange="javascript:setTimeout('__doPostBack(\'ctl00$FeaturedContent$ddlMain\',\'\')', 0)" name="ctl00$FeaturedContent$ddlMain">
<option value="0" selected="selected">
BY PHYSICIAN
</option>
<option value="1">
BY LOCATION
</option>
<option value="2">
BY SPECIALTY
</option>
</select>
</div>
每当我选择另一个选项,开发者控制台显示:
<select id="ddlMain" class="default" style="width: 365px;" onchange="javascript:setTimeout('__doPostBack(\'ctl00$FeaturedContent$ddlMain\',\'\')', 0)" name="ctl00$FeaturedContent$ddlMain">
<option value="0">
BY PHYSICIAN
</option>
<option value="1" selected="selected">
BY LOCATION
</option>
<option value="2">
BY SPECIALTY
</option>
</select>
我在想这是干什么的,l选择最初分配的样式。
有什么办法可以避免不刷新页面的风格?
如果页面刷新每个选择,该样式似乎工作正常。
这个标题是指哪些样式下拉负载在页面上运行脚本:
<script type="text/javascript">
$(document).ready(function(){
$('.default').dropkick();
});
</script>
当您将样式添加到下拉列表中时,您是否还在执行插件的所需JavaScript部分? 尝试将所需的JavaScript封装到您的body底部或内容占位符的'function pageLoad(){// dropkick plugin stuff}'中。 使用pageLoad会导致每次运行Javascript,而不是'$(document).ready(function(){...});' 如果这不起作用,您也可以尝试使用ScriptManager注册JS。 – MightyLampshade
使用将类分配给下拉的脚本更新了我的问题,并且您正确运行了一次。我该如何去修改代码?谢谢。 – SearchForKnowledge
没关系,明白了:) – SearchForKnowledge